Linux迁移gitlab容器

发布于:2024-12-05 ⋅ 阅读:(56) ⋅ 点赞:(0)

Linux迁移gitlab容器并配置

迁移gitlab容器本文分两部分,第一步在新服务器上安装相同版本的gitlab容器,可以在确定gitlab版本之后直接在docker上拉取,我这里直接从原服务器上将镜像打包加载到新服务器上。第二步从原服务器上操作备份文件,将备份文件在新服务器上备份恢复。具体配置如下:

1、安装gitlab容器

1.1 从原服务器上将gitlab镜像打包

docker save 1eb39cd825fa > gitlab-ee.tar

1.2 新服务器将tar包加载为镜像

docker load -i ./gitlab-ee.tar

1.3 查看加载的镜像

docker images

1.4 启动docker容器

我这里按原来的容器的配置启动,可根据自己需要配置,若原容器的gitlab.rb文件里有配置,则同样在启动新容器后做配置

docker compose -f docker-compose.yml up -d
#docker-compose.yml
version: '3.6'  

name: gitlab
services:  
  web:  
    image: 'my_ubuntu_container'
    restart: always  
    hostname: ''
    environment:  
      GITLAB_OMNIBUS_CONFIG: |
        external_url 'https://xxxxxx'  
        gitlab_rails['gitlab_shell_ssh_port'] = xxxx  
    ports:  
      - '48081:8081'  
      - '2222:22'  
    volumes:  
      - '/opt/gitlab/config:/etc/gitlab'  
      - '/opt/gitlab/logs:/var/log/gitlab'  
      - '/opt/gitlab/data:/var/opt/gitlab'
    shm_size: '256m'
2、配置容器备份恢复

2.1 在原服务器上备份文件

# 014cc12bf4ae为运行的容器id
docker exec -it 014cc12bf4ae gitlab-backup create

2.2 将备份文件发送到新服务器

scp ./1732785650_2024_11_28_15.5.4-ee_gitlab_backup.tar root@xx.xx.xx.xx:/tmp

2.3 将备份文件放在备份目录 /var/opt/gitlab/backups下

cd /var/opt/gitlab/backups
mv /tmp/1732785650_2024_11_28_15.5.4-ee_gitlab_backup.tar ./
#给备份文件授权
chmod 777 1732785650_2024_11_28_15.5.4-ee_gitlab_backup.tar

2.4 恢复前需要先停一些服务

#进入到容器里
docker exec -it 382 bash
#查看容器内运行的模块
gitlab-ctl status
#unicorn、sidekiq为数据连接相关服务,若存在则停止
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq
#停止应用服务器puma
gitlab-ctl stop puma

2.5 在容器内部执行备份命令

#老版本直接恢复,新版本需要把文件的后缀删除到版本标识前
gitlab-rake gitlab:backup:restore BACKUP=1732785650_2024_11_28_15.5.4-ee

2.5 重启刚才停止的服务

gitlab-ctl start xxx
#或者重启所有模块
gitlab-ctl restart

至此迁移服务完成


网站公告

今日签到

点亮在社区的每一天
去签到