GitLab 备份代码库和恢复代码库
环境说明:GitLab 18 版本 安装在 Windows 环境上的Docker 里

一、GitLab 备份操作
  1. 进入 GitLab Docker 容器
    打开命令提示符(CMD)或 PowerShell,执行以下命令进入运行中的 GitLab 容器:
    我的容器id 8e5fc8d4dbfd
格式
docker exec -it <你的GitLab容器名称或ID> /bin/bash
实例
docker exec -it 8e5fc8d4dbfd /bin/bash

如果不确定容器名称或ID,可通过 docker ps 命令查看。

  1. 执行备份命令
    在容器内执行 GitLab 备份命令,该命令会备份数据库、代码库、附件等所有数据:
gitlab-backup create

备份文件会生成在 GitLab 容器内的 /var/opt/gitlab/backups 目录下,文件名格式为 XXXXXX_XXXXXX_gitlab_backup.tar(包含时间戳信息)。
映射主机安装地址上也能找到该文件

在这里插入图片描述

二、GitLab 恢复操作

假设你已将外部导出的 GitLab 备份文件准备好,执行以下步骤恢复:

  1. 将备份文件复制到容器内的备份目录
    将外部备份文件(如 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/



  1. 进入 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

  1. 执行恢复命令
    执行恢复命令,其中 XXXXXX_XXXXXX 是备份文件的时间戳前缀:
gitlab-backup restore BACKUP=XXXXXX_XXXXXX

gitlab-backup restore BACKUP=1762495062_2025_11_07_18.5.1

恢复过程中会提示确认,根据提示操作即可。

  1. 重启 GitLab 服务
    恢复完成后,重启 GitLab 相关服务以确保配置生效:
gitlab-ctl restart

通过以上步骤,即可完成 GitLab 18 版本(Docker 部署在 Windows 环境)的备份与从外部代码库的恢复操作。操作过程中请确保容器处于正常运行状态,且备份文件的完整性得到保障。

Logo

码道开发者社区,聚焦华为云码道 CodeArts 代码智能体,沉淀 Agent、Skill、鸿蒙开发实战内容,供开发者查阅资料、交流技术、分享工程实践

更多推荐