docker中gitlab迁移

本文详细描述了如何在Docker中对GitLab进行备份(创建并定位文件)以及恢复过程(上传备份文件、执行恢复命令和重启服务),包括使用find命令定位备份文件和恢复时注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、备份
1、首先查看docker中运行的容器,找到运行gitlab的容器id

linux shell 窗口中执行如下命令:

docker ps
2、进入docker容器
docker exec -i -t 4d5e099d20af /bin/bash
3、创建备份

执行命令:

gitlab-rake gitlab:backup:create

备份完成后生成的文件:

1669876030_2022_12_01_11.1.4_gitlab_backup.tar

备份文件所在目录为git数据卷目录中的backups

4.拷贝文件

一般是在下面这个目录

root@80722339a402:/var/opt/gitlab/backups#

如果没有挂载数据卷,但是又不知道文件在哪里,可以使用命令在linux本机上查找这个备份的文件

假设我有一个名为test.txt的文件,我需要找到它但是不确定具体位于哪个目录下。我可以执行下面的命令,从文件系统的顶部/开始搜索。

find / -type f -name test.txt

具体含义为:

  • /表示从文件系统的顶部开始搜索。

  • -type 是你要寻找的东西的类型。f表示文件,b表示块状特殊设备文件,c表示字符特殊设备文件,d表示目录,l表示符号链接。

  • -name是你要寻找的东西的名字,结果将完全匹配。

find / -type f -name 1669876030_2022_12_01_11.1.4_gitlab_backup.tar
二.恢复

1、把备份文件上传到新服务器的gitlab数据卷backups目录中

2、进入dokcer 容器 gitlab(使用挂载数据卷的方式启动)

docker exec -i -t gitlab /bin/bash 

3、恢复备份

此处有个大坑,一定要指定路径,并且文件的一些后缀不需要加,要手动删除一些后缀

gitlab-rake gitlab:backup:restore BACKUP=/var/opt/gitlab/backups/1669876030_2022_12_01_11.1.4

4.停止相关数据链接

gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq

5.重启

 gitlab-ctl restart

完成后访问WEB检查了下没有什么问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值