【Docker】【实战】 ---- GitLab 备份代码库和恢复代码库
·
GitLab 备份代码库和恢复代码库
环境说明:GitLab 18 版本 安装在 Windows 环境上的Docker 里
一、GitLab 备份操作
- 进入 GitLab Docker 容器
打开命令提示符(CMD)或 PowerShell,执行以下命令进入运行中的 GitLab 容器:
我的容器id 8e5fc8d4dbfd
格式
docker exec -it <你的GitLab容器名称或ID> /bin/bash
实例
docker exec -it 8e5fc8d4dbfd /bin/bash
如果不确定容器名称或ID,可通过 docker ps 命令查看。
- 执行备份命令
在容器内执行 GitLab 备份命令,该命令会备份数据库、代码库、附件等所有数据:
gitlab-backup create
备份文件会生成在 GitLab 容器内的 /var/opt/gitlab/backups 目录下,文件名格式为 XXXXXX_XXXXXX_gitlab_backup.tar(包含时间戳信息)。
映射主机安装地址上也能找到该文件

二、GitLab 恢复操作
假设你已将外部导出的 GitLab 备份文件准备好,执行以下步骤恢复:
- 将备份文件复制到容器内的备份目录
将外部备份文件(如XXXXXX_XXXXXX_gitlab_backup.tar)复制到 GitLab 容器的/var/opt/gitlab/backups目录:
格式:
docker cp D:\javaAll\GitLab\data\backups\XXXXXX_XXXXXX_gitlab_backup.tar <你的GitLab容器名称或ID>:/var/opt/gitlab/backups/
实例:
docker cp D:\javaAll\GitLab\data\backups\1762495062_2025_11_07_18.5.1_gitlab_backup.tar 8e5fc8d4dbfd:/var/opt/gitlab/backups/
- 进入 GitLab 容器并修改备份文件权限
进入容器:
docker exec -it <你的GitLab容器名称或ID> /bin/bash
docker exec -it 8e5fc8d4dbfd /bin/bash
修改备份文件的权限,确保 GitLab 进程可访问:
chmod 777 /var/opt/gitlab/backups/XXXXXX_XXXXXX_gitlab_backup.tar
chmod 777 /var/opt/gitlab/backups/1762495062_2025_11_07_18.5.1_gitlab_backup.tar
- 执行恢复命令
执行恢复命令,其中XXXXXX_XXXXXX是备份文件的时间戳前缀:
gitlab-backup restore BACKUP=XXXXXX_XXXXXX
gitlab-backup restore BACKUP=1762495062_2025_11_07_18.5.1
恢复过程中会提示确认,根据提示操作即可。
- 重启 GitLab 服务
恢复完成后,重启 GitLab 相关服务以确保配置生效:
gitlab-ctl restart
通过以上步骤,即可完成 GitLab 18 版本(Docker 部署在 Windows 环境)的备份与从外部代码库的恢复操作。操作过程中请确保容器处于正常运行状态,且备份文件的完整性得到保障。
更多推荐


所有评论(0)