Gitlab安装/备份/恢复

1 篇文章 0 订阅
1 篇文章 0 订阅

Gitlab安装/备份/恢复

版本

---- docker-ce 最新版

---- docker-compose 1.29.2

---- gitlab汉化版镜像 twang2218/gitlab-ce-zh:11.1.4

安装

安装docker-ce
yum-config-manager --add-repo  https://download.docker.com/linux/centos/docker-ce.repo
yum install -y docker-ce*
systemctl start docker
安装docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
安装gitlab汉化版镜像

docker pull twang2218/gitlab-ce-zh:11.1.4

启动gitlab
创建git文件夹
mkdir -p  /usr/local/docker/gitlab
编辑docker-compose.yml
version: '3'
services:
    web:
      image: 'twang2218/gitlab-ce-zh:11.1.4'
      restart: always
      hostname: '192.168.89.97'
      environment:
        TZ: 'Asia/Shanghai'
        GITLAB_OMNIBUS_CONFIG: |
          external_url 'http://192.168.89.97:80'
          gitlab_rails['gitlab_shell_ssh_port'] = 2222
          unicorn['port'] = 8888
          nginx['listen_port'] = 80
      ports:
        - '80:80'
        - '8080:8080'
        - '8443:443'
        - '2222:22'
      volumes:
        - /usr/local/docker/gitlab/config:/etc/gitlab
        - /usr/local/docker/gitlab/data:/var/opt/gitlab
        - /usr/local/docker/gitlab/logs:/var/log/gitlab
        - /usr/local/docker/gitlab/backups:/var/opt/gitlab/backups

**注意:**如果要更改external_url 的端口号80.则对应的nginx也要一起更改端口号

compose启动
cd  /usr/local/docker/gitlab
docker-compose up -d
测试
浏览器访问

http://192.168.89.97

在这里插入图片描述

初始用户名:admin@example.com

初始密码:访问浏览器后第一次直接设置密码即可,使用该用户名和密码访问登录即可

登录成功后

在这里插入图片描述

备份

进入Gitlab容器
docker exec -it  容器名   /bin/bash
执行备份
gitlab-rake gitlab:backup:create
备份文件位置

执行完命令后,备份文件默认放置

cd /var/opt/gitlab/backups 
生成的文件名

example : 1629266728_2021_08_18_11.1.4_gitlab_backup.tar

拷贝备份到宿主机

执行完备份的命令后,退到宿主机器,复制容器里的备份文件到宿主机

docker container  cp  容器:/var/opt/gitlab/backups/备份文件    /var/opt/gitlab/backups/

**注意:**如果按照安装中的docker-compose.yml已经将备份文件挂载到宿主机,无需执行此命令,直接去宿主机/var/opt/gitlab/backups/去拿备份文件,会自动同步。

备份copy

将老机器上的备份文件上传到新机器上

scp -r 备份文件 newServer:/var/opt/gitlab/backups/

scp -r  备份文件    root@新服务器的IP:/var/opt/gitlab/backups/

恢复

设置777权限

chmod 777 备份文件 新服务器执行,防止解压无权限

chmod 777  /var/opt/gitlab/backups/*.tar
进入GItlab容器
进入新服务器的gitlab容器
docker exec -it 容器名  /bin/bash
关闭数据库连接
gitlab-ctl stop unicorn 
gitlab-ctl stop sidekiq
恢复命令

gitlab-rake gitlab:backup:restore BACKUP=备份文件编号

gitlab-rake gitlab:backup:restore BACKUP=1629266728_2021_08_18_11.1.4

**注意:**不要带_gitlab后缀

启动gitlab

sudo gitlab-ctl start

脚本

一键安装与恢复

准备备份文件docker-compose.yml

在新机器上执行

mkdir -p /usr/local/docker/gitlab/backups

备份文件 放到/usr/local/docker/gitlab/backups

docker-compose.yml 放到/usr/local/docker/gitlab

#安装docker
yum-config-manager --add-repo  https://download.docker.com/linux/centos/docker-ce.repo
yum install -y docker-ce*
systemctl start docker
#下载gitlab images
docker pull twang2218/gitlab-ce-zh:11.1.4
#安装docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
#启动
#/usr/local/docker/gitlab  在此路径下放置docker-compose.yml
cd  /usr/local/docker/gitlab
docker-compose up -d
#恢复开始
docker exec  $(docker ps | grep twang2218/gitlab-ce-zh:11.1.4 |awk '{print $1}')   /bin/bash  -c "
gitlab-ctl stop unicorn;\
gitlab-ctl stop sidekiq;\
gitlab-rake gitlab:backup:restore  force=yes  BACKUP=$(ls /var/opt/gitlab/backups/ |grep _gitlab |awk -F "_gitlab" '{print $1}');\
gitlab-ctl start;"
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值