13. docker 迁移 GitLab 项目

最后更新于:2022-04-02 01:41:15

# 13. docker 迁移 GitLab 项目 #### 1. 介绍 现在我需要把docker部署的gitlab应用迁移到另一台主机上。 **如果不知道如何用docker来搭建gitlab服务的,可以参照我以前的一篇文章[使用 compose 部署 GitLab 应用 (八)](https://www.rails365.net/articles/shi-yong-compose-bu-shu-gitlab-ying-yong-ba)** #### 2. 流程 首先gitlab是会每天做一次备份的,备份文件位于`/srv/docker/gitlab/gitlab/backups`。 ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/7b77c28a5354b3fd0ea9cab1e96f6a22_2028x212.png) 这里有好多个备份,选一个日期最新的。 再把它上传到服务器上。 如果觉得都不新,可以创建一个最新的,使用下面的命令: ``` $ docker run --name gitlab -it --rm \ sameersbn/gitlab:9.0.5 app:rake gitlab:backup:create ``` 不管怎样,就是要找一个备份,然后上传到新的服务器上。 注意:**这个备份所使用gitlab的版本和新的服务器上使用的gitlab的版本要一致,不然不能成功迁移的** 新的服务器的备份的文件存放的位置跟之前的一样,也是:`/srv/docker/gitlab/gitlab/backups`。 执行下面的命令可以恢复备份: ``` $ docker-compose run --rm gitlab app:rake gitlab:backup:restore ``` ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/de04916642329082c233d735a6476fa8_1672x1192.png) 之后可能会报错: ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/79c2c04093182de5d01830c6c3de3fc1_1726x1056.png) 没关系,你再把`docker-compose up`运行一下,再开一个终端去运行之前的恢复命令。 ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/6447465ff3229408db4bd1b599934b29_1006x1160.png) 数据库和仓库都会帮我恢复 所有数据都回来了,good job! ![](https://docs.gechiui.com/gc-content/uploads/sites/kancloud/d26c09a920d3fca45b0ada5cf814a637_2872x1242.png) 完结。
';