使用docker-compose将gitlab10.8.2迁移至docker并升级到最新版本(12.8.1)

南笙酒味 提交于 2020-02-27 11:29:43

备份数据

执行备份指令:gitlab-rake gitlab:backup:create 

默认情况会在 /var/opt/gitlab/backups/ 生成一个tar包,如:1582626443_2020_02_25_10.8.2_gitlab_backup.tar

如果修改了配置文件,在 /etc/gitlab/gitlab.rb 查看 gitlab_rails['backup_path'] 备份目录

docker-compose运行gitlab

使用docker-compose启动与之前的gitlab相同的版本

我进行迁移的gitlab版本为10.8.2,所以docker-compose的docker镜像为gitlab/gitlab-ce:10.8.2-ce.0

docker-compose.yml详细内容可查看官网 https://docs.gitlab.com/omnibus/docker/

执行docker-compose up -d 或者docker stack都能启动gitlab集群

还原数据

将刚才备份的tar包拷贝到新gitlab服务的备份目录,由于我将 /srv/gitlab/data 映射进 /var/opt/gitlab

所以我将备份的tar包拷贝到 /srv/gitlab/data/backups/ 里,然后进入容器执行执行备份还原命令

进入gitlab的web容器docker exec -it [容器名或容器id] bash

执还原命令: gitlab-rake gitlab:backup:restore BACKUP=1582626443_2020_02_25_10.8.2

执行结束之后,gitlab的数据已经完成了迁移

将gitlab升级到最新版本

由于直接从10.8.2升级到最新版本(12.8.1),跨版本太多,会出错,需要分步

gitlab10.8.2升级到gitlab11.11.0

修改docker-compose.yml镜像为:gitlab/gitlab-ce:11.11.0-ce.0,如下所示

然后执行docker-compose up -d 或者 docker stack deploy 来更新服务镜像

执行命令后需要等几分钟等gitlab升级结束,多试几次url访问,能正访问说明升级结束,或者使用docker logs 容器ID查看日志

gitlab11.11.0升级到gitlab12.8.1

修改docker-compose.yml镜像为:gitlab/gitlab-ce:latest,如下所示

然后执行docker-compose up -d 或者 docker stack deploy 来更新服务镜像

执行命令后需要等几分钟等gitlab升级结束,多试几次url访问,能正访问说明升级结束,或者使用docker logs 容器ID查看日志

 

直接从10.8.2升级到最新版本(12.8.1)会报错

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!