1. gitlab 服务部署¶
1.1. 撰写目的¶
方便大家协作开发,利用 gitlab-ce 开源组件搭建了实验室内部的 git 服务。 本文文档主要用于介绍服务的部署和备份。
当前该服务部署在 master 服务器上,路径为:/home/dscl/gitlab
1.2. 从备份中恢复¶
部署文件放在 gitlab-docs 仓库中。
在
.env中文件中,设置app_root路径.启动gitlab
docker-compose up -d需要等待一段时间,才能启动成功,可以使用docker log <container name>查看.导入备份文件
目前每次备份的文件在 dscl-gitlab-backup,按照时间命名。
导入备份文件到
data/backups中,注意文件权限将
config/gitlab.rb和config/gitlab-secrets.json放到项目目录下的config中进入 gitlab container 命令行, 设置备份文件的权限
chown git:git <backup_file>关闭相关服务
gitlab-ctl stop unicorn gitlab-ctl stop puma gitlab-ctl stop sidekiq
导入备份
gitlab-backup restore BACKUP=<backup_file>
注意,文件名字不要包含后缀
_gitlab_backup.tar上述详细的步骤请参考gitlab-restore
1.3. 备份整个gitlab¶
1.3.1. 如何备份¶
进入 gitlab 所在docker,执行:
gitlab-backup create
备份文件会存储在 data/backups 下面。
如果配置了 s3 存储,那么文件会自动保存到 s3 上面, 具体配置信息参考 gitlab 备份到 s3
更多信息参考 gitlab 备份与恢复
1.3.2. 定时备份(optional)¶
可以参考 cron 的使用,定时触发备份命令,具体如何设置不再详细阐述。