gitlab 升级

gitlab 升级


官网升级路线: https://docs.gitlab.com/ee/policy/maintenance.html

第一步: 原机器备份

docker exec -t gitlab gitlab-rake gitlab:backup:create CRON=1

备份完成将备份文件和配置目录(/srv/gitlab/config) 通过scp拷贝到新机器上, 备份文件必须拷贝到目标机器的 /srv/gitlab/data/backups


第二步: 打包原机器镜像

打包完成scp到新机器

docker save gitlab/gitlab-ce:11.10.4-ce.0 > gitlab-ce-11.10.4-ce.0.tar
scp -r  /srv/gitlab/config/ 172.16.240.15:/srv/gitlab/config/

第三步: 将原机器镜像导入到新机器

https://hub.docker.com/r/gitlab/gitlab-ce/tags?page=3


docker load -i gitlab-ce-11.10.4-ce.0.tar 

第四步: 新机器配置gitlab


  • 基于原机器的镜像启动容器
docker run -d --name gitlab --hostname gitlab.hims-portal-stg1.paic.com.cn -p 443:443 -p 80:80 -p 8022:22 --restart always -v /srv/gitlab/config:/etc/gitlab -v /srv/gitlab/logs:/var/log/gitlab -v /srv/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce:11.10.4-ce.0

  • 恢复数据
ls /srv/gitlab/data/backups/
1576659671_2019_12_18_11.10.4_gitlab_backup.tar

chmod +r /srv/gitlab/data/backups/1576659671_2019_12_18_11.10.4_gitlab_backup.tar 

docker exec -it gitlab gitlab-ctl stop unicorn
docker exec -it gitlab gitlab-ctl stop sidekiq
docker exec -it gitlab  gitlab-rake gitlab:backup:restore BACKUP=1576659671_2019_12_18_11.10.4

  • 重启gitlab服务
docker exec -it gitlab  gitlab-ctl restart

第五步: 将gitlab升级到11.11.8

docker stop gitlab
docker rm gitlab

docker pull gitlab/gitlab-ce:11.11.8-ce.0

docker run -d --name gitlab --hostname gitlab.hims-portal-stg1.paic.com.cn -p 443:443 -p 80:80 -p 8022:22 --restart always -v /srv/gitlab/config:/etc/gitlab -v /srv/gitlab/logs:/var/log/gitlab -v /srv/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce:11.10.4-ce.0

docker restart gitlab 

第六步: 将gitlab升级到12.0.9

docker stop gitlab
docker rm gitlab

docker pull gitlab/gitlab-ce:12.0.9-ce.0

 docker run -d --name gitlab --hostname gitlab.hims-portal-stg1.paic.com.cn -p 443:443 -p 80:80 -p 8022:22 --restart always -v /srv/gitlab/config:/etc/gitlab -v /srv/gitlab/logs:/var/log/gitlab -v /srv/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce:12.0.9-ce.0

docker restart gitlab 

第七步: 将gitlab升级到12.1.17

docker stop gitlab
docker rm gitlab

docker pull gitlab/gitlab-ce:12.1.17-ce.0

docker run -d --name gitlab --hostname gitlab.hims-portal-stg1.paic.com.cn -p 443:443 -p 80:80 -p 8022:22 --restart always -v /srv/gitlab/config:/etc/gitlab -v /srv/gitlab/logs:/var/log/gitlab -v /srv/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce:12.1.17-ce.0

docker restart gitlab 

# Gitlab 常用目录
/opt/gitlab/    gitlab安装目录
/etc/gitlab/gitlab.rb   配置文件
/var/opt/gitlab    数据文件
/var/opt/gitlab/git-data/  仓库文件
posted @ 2019-12-19 15:12  cjw1219  阅读(528)  评论(0编辑  收藏  举报