gitlab迁移至docker并版本升级

date
Jul 13, 2019
slug
gitlab-docker-install
status
Published
tags
开发
技术
Linux
summary
实验室的gitlab服务器迁移到新的服务器上,并且使用docker部署并更新
type
Post
💡
在之前的文章中提到了在实验室的华为云服务器上安装了gitlab社区版本,并且开放提供给了实验室的所有同学去使用。gitlab社区版本更新的比较快,曾经尝试过手动去更新gitlab的版本,结果出现了报错信息,Stack Overflow 和 google 搜索了很多解决方式,终于解决了更新的报错问题。网上都推荐使用docker方式去部署,借着更换了新的华为服务器的机会,顺便把实验室的gitlab服务器迁移到新的服务器上,并且使用docker部署并更新。本文记录了整个流程,以便后续查看。
notion image

备份Gitlab

因为需要数据迁移,我们首先需要把数据导出,gitlab导出数据非常方便,直接利用 gitlab-rake 命令备份。
耐心等待几分钟备份完成即可
notion image
可以看到备份后的最新备份文件名为 1563413816_2019_07_18_11.4.4_gitlab_backup.tar
  1. 备份后的文件使用 winscp下载至本地
  1. 同时需要下载安全密钥文件,安全密钥文件里面存放了所有用户的ssh密钥信息,如果不复制这个文件,新的服务器上用户需要再次手动添加ssh密钥
  1. 安全密钥文件的目录在 /etc/gitlab/gitlab-secrets.json
 

查看gitlab的版本

在docker中需要先安装和之前版本一致的gitlab版本
运行下列命令查看gitlab的版本。

安装指定版本的gitlab

docker的操作不多介绍,下面介绍docker-compose文件
 

运行docker-compose文件

然后使用 winscp将备份文件上传至 /mnt/sdc/gitlab/backups 目录下。
然后进入容器中

停止相关服务:

开始恢复

将安全密钥内容复制到 数据目录下的密钥文件中
进入备份目录下,找到上传的备份文件名
然后运行gitlab恢复命令
按照提示输入要yes,等待恢复完成。

重启服务

重启gitlab配置
验证指令是否正常
 

升级gitlab版本

升级非常的容易,只需要将docker-compose文件中image: gitlab/gitlab-ce:11.4.4-ce.0更改为image: gitlab/gitlab-ce:latest,然后运行
即升级到最新版本gitlab
 

小结

docker中升级和安装gitlab都非常的方便,考虑以后将各种服务都安装在docker中

© hack-fang 1995 - 2024