在CentOS8中安装gitlab
安装 docker 及 docker-compose
centos8 更新源
cd /etc/yum.repos.d/
sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*
gitlab 服务器 IP:192.168.0.666,端口 80
安装 docker
### CentOS8 默认是会读取centos.org的mirrorlist的,所以一般来说是不需要配置镜像的。
(Refer to: https://www.linuxidc.com/Linux/2019-10/161212.htm)
# step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# step 2: 更新 container.io 包, 否则可能会报 `package docker-ce-3:19.03.13-3.el7.x86_64 requires containerd.io >= 1.2.2-3, ...`的错
# 可在 https://mirrors.aliyun.com/docker-ce/linux/centos/8/x86_64/stable/Packages/ 下找最新版安装
sudo dnf install -y --allowerasing https://mirrors.aliyun.com/docker-ce/linux/centos/8/x86_64/stable/Packages/containerd.io-1.6.6-3.1.el8.x86_64.rpm
# Step 3: 安装Docker-CE
sudo yum install -y docker-ce
# Step 4: 开启Docker服务并设置开机自启
sudo systemctl start docker && sudo systemctl enable docker
# 测试, 如输出版本号则安装成功
docker version
docker 安装参考:https://www.jianshu.com/p/18c1abe97b2a
配置 gitlab
docker-compose.yml
version: '2'
services:
gitlab:
image: 'gitlab/gitlab-ce'
container_name: "gitlab"
restart: unless-stopped
privileged: true
hostname: 'gitlab.xxxx.com'
environment:
TZ: 'Asia/Shanghai'
GITLAB_OMNIBUS_CONFIG: |
external_url 'http://gitlab.xxxx.com'
gitlab_rails['time_zone'] = 'Asia/Shanghai'
ports:
- '80:80'
volumes:
- /app/gitlab/config:/etc/gitlab
- /app/gitlab/data:/var/opt/gitlab
- /app/gitlab/logs:/var/log/gitlab
运行: docker-compose up -d
配置 nginx 指向 gitlab 服务
server {
server_name gitlab.xxxx.com;
listen 80;
keepalive_timeout 70;
location / {
proxy_pass_header Server;
proxy_redirect off;
set $outhost "gitlab.xxxx.com";
proxy_set_header Host $outhost;
proxy_pass http://192.168.0.666:80;
proxy_set_header x-Forwarded-For $proxy_add_x_forwarded_for;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
}
}
重置 gitlab 账号密码,无法发送邮件
docker exec -it gitlab gitlab-rails console
user = User.where(username:"xxxx").first
user.password="aabb12223"
user.save!
备份
将备份脚本放到 /app/gitlab/data 目录中
#获取当前系统时间
date=`date +%Y_%m_%d`
#临时备份目录
out_dir='/var/opt/gitlab/backups/'
#备份存放路径
tar_dir='/var/opt/gitlab/bak_tar/'
#DAYS=15代表删除15天前的备份,即只保留近15天的备份
days='15'
tar_bak=$date'.tar.gz'
mkdir -p $tar_dir
cd $out_dir
rm -rf $out_dir*
#备份数据
gitlab-rake gitlab:backup:create
#最终保存的数据库备份文件
bakfile=$(ls -lt $out_dir | grep tar | head -n 1 |awk '{print $9}')
cd $out_dir
#压缩为.tar.gz格式
tar -zcvPf $tar_dir$tar_bak $bakfile
#删除15天前的备份文件
find $tar_dir -mtime +$days -delete
rm -rf $out_dir*
exit
执行备份:docker exec -i gitlab /bin/bash -c 'sh /var/opt/gitlab/gitlab_bak_data.sh'
将备份文件复制到本地目录,并删除历史 10 天前的文件
echo 'bak gitlab'
scp -r root@192.168.0.666:/app/gitlab/data/bak_tar/ /d/gitlab/
./find.exe /d/gitlab/bak/ -mtime +10 -delete
echo
gitlab 备份还原参考:https://juejin.cn/post/7031027881484484644
在CentOS8中安装gitlab的更多相关文章
- Centos中安装gitlab
安装依赖: sudo yum install curl openssh-server openssh-clients postfix cronie sudo service postfix start ...
- linux中安装gitlab和cicd(断网版)
1:先介绍一下怎么查找所需要的依赖包 #yum install rpmname--downloadonly --downloaddir=/rpmpath 例如:yum install gitlab-r ...
- CentOS8中安装maven
下载maven,具体目录可根据实际情况而定 # wget http://mirrors.cnnic.cn/apache/maven/maven-3/3.3.9/binaries/apache-mave ...
- Centos8中安装JDK1.8
在这里是通过yum命令进行安装的 安装前检查是否安装了jdk # java -version 如果使用 yum 安装的 jdk,请使用下面命令卸载 yum -y remove java-1.8.0-o ...
- CentOS8.1中搭建Gitlab服务器
依旧是写在前面的话♠:很多IT人从业N年也许都还没有亲自搭过一次Gitlab服务器,是不是?有木有?!通常都是背着自己的笔记电脑到一家公司入职,或入职后领到公司分配的电脑,然后分配了Git账号,拿了将 ...
- centos8中的MySQL卸载和安装
centos8中的MySQL卸载和安装 前言 前几天在自己的服务器上安装了一个NDB集群[而且还没有成功] 放弃治疗后用一台没有mysql的服务器实现了单机版本的集群. 本来以为这事到这就结束了,结果 ...
- CentOS安装gitlab,gerrit,jenkins并配置ci流程
CentOS安装gitlab,gerrit,jenkins并配置ci流程 By Wenbin juandx@163.com 2016/4/9 这是我参考了网上很多的文档,配置了这三个软件在一个机器上, ...
- CentOS安装gitLab服务器
首先利用gitlab-install-el6.sh安装,比较简单: (出处:http://www.linuxidc.com/Linux/2013-06/85754.htm) 1:如果有条件,提供一台全 ...
- Mac安装GitLab CE记录
0 REF REF1 原始的GitLab Documentation REF2 Installation-guide-for-GitLab-on-OS-X REF3 如何在Mac 终端升级ruby版本 ...
- Docker安装Gitlab
一.Ubuntu16.4上Docker安装Gitlab 1.安装docker 参见:https://docs.docker.com/engine/installation/linux/ubuntuli ...
随机推荐
- PAT (Basic Level) Practice 1021 个位数统计 分数 15
给定一个 k 位整数 N=dk−110k−1+⋯+d1101+d0 (0≤di≤9, i=0,⋯,k−1, dk−1>0),请编写程序统计每种不同的个位数字出现的次数.例如:给定 N= ...
- Java后端开发——美团(牛客)
Java后端开发--美团(牛客) Java的基本数据类型,各自的字节数 老生常谈,不多说了. 类型 字节数 byte 1字节 short 2字节 int 4字节 long 8字节 float 4字 ...
- 华为网关交换机开启DHCP server服务
华为网关交换机可以配置基于全局地址池的DHCP服务器,也可以配置基于接口地址池的DHCP服务器,本人比较倾向于配置基于接口地址池的DHCP服务器,因此在这里只介绍后者. 第一步:开启DHCP功能 [S ...
- VideoPipe可视化视频结构化框架开源了!
完成多路视频并行接入.解码.多级推理.结构化数据分析.上报.编码推流等过程,插件式/pipe式编程风格,功能上类似英伟达的deepstream和华为的mxvision,但底层核心不依赖复杂难懂的gst ...
- ASP.NET Core :缓存系列(四):内存缓存 MemoryCache
System.Runtime.Caching/MemoryCache ICacheEntry 接口中的属性:具体设置过期时间 可以参考:微软文档ICacheEntry 接口 缓存基本使用 (一) 绝对 ...
- C语言实现扫雷游戏(完整版)
头文件定义.函数声明 下面就是扫雷中使用到的所有函数,为了省事我把所有的代码都放在一个C文件中实现 宏定义中设置了游戏的界面布局,以及设置地雷的个数(这里默认的是10个地雷),界面是一个9*9的方格布 ...
- C语言------选择结构
仅供借鉴.仅供借鉴.仅供借鉴(整理了一下大一C语言每个章节的练习题.没得题目.只有程序了) 文章目录 1 .实训名称 2 .实训目的及要求 3 .源代码及运行截图 4.小结 1 .实训名称 实训4:选 ...
- 在vue中_this和this的区别
_this只是一个变量名,this代表父函数,如果在子函数还用this,this的指 向就变成子函数了,_this就是用来存储指向的 普通函数中的this表示调用此函数时的对象,箭头函数里面的this ...
- 齐博x1再来个抛砖引玉 内容页根据关键词调用相关内容 新功能哦!
昨天升级了一个隐藏的功能,今天就简单的做个说明怎么用,反正也不能浪费不是 那就用内容页面关键词读取相关内容为例吧. 前台是你模型中已经存在keywords字段 关键词支持 空格分割,号分割 那么就开 ...
- WPF 鼠标移动到图片变大,移开还原,单击触发事件效果
<Grid> <Canvas x:Name="LayoutRoot"> <Image Cursor=" ...