群晖gitlab备份迁移
开篇一张图
-
1.gitlab跑在黑群晖的docker中,先确定对应的版本和服务,gitlab为同版本迁移;
如:我的gitlab用到了psql和redis
sameersbn/postgresql:12-20200524
sameersbn/redis:4.0.9-1
sameersbn/gitlab:13.12.2
-
2.然后先在黑群晖中备份已有项目
在gitlab实例shell中运行
bundle exec rake gitlab:backup:create RAILS_ENV=production
从gitlab/backups将备份文件拷贝到临时位置方便后续恢复
-
3.新机器中拉取镜像 方便后续使用
docker pull sameersbn/postgresql:12-20200524
docker pull sameersbn/redis:4.0.9-1
docker pull sameersbn/gitlab:13.12.2
-
4.分别部署容器实例
docker run --name=synology_gitlab_postgresql -d -e 'DB_NAME=gitlabhq_production' -e 'DB_USER=gitlab_user' -e 'DB_PASS=password' -e 'DB_EXTENSION=pg_trgm,btree_gist' -v /mnt/d/docker/postgresql:/var/lib/postgresql sameersbn/postgresql:12-20200524
docker run --name='gitlab' -d --link synology_gitlab_redis:redisio -v /mnt/d/docker/gitlab/data:/home/git/data -p 30022:22 -p 30080:80 -e 'GITLAB_PORT=30080' -e 'GITLAB_SSH_PORT=30022' --link synology_gitlab_postgresql:postgresql -e 'GITLAB_EMAIL=landwind1180@gmail.com' -e 'GITLAB_BACKUPS=daily' -e 'GITLAB_HOST=192.168.123.186' -e 'GITLAB_SIGNUP=true' -e 'GITLAB_GRAVATAR_ENABLED=false' -e 'GITLAB_SECRETS_SECRET_KEY_BASE=ADeKlXsdUH18a2BNYYeuTKdSV4yycQNVbbvTPF3ShPP2KF0nBAjAfT9paBpiZu24' -e 'GITLAB_SECRETS_DB_KEY_BASE=8c2943pzWnd30xt2UAMIG0XxCsY1jG8pdXfTQ1FZt77cWrarzqVsYd4y54wAUpGG' -e 'GITLAB_SECRETS_OTP_KEY_BASE=DVyFWY1nSVTxaOy9poddPSDWcjeFPT9Eb2gvKJ8LyRbBA8BJoDVGJAjlHScnulOy' sameersbn/gitlab:13.12.2
-
5.测试gitlab是否正常启动
打开localhost:30080
-
6.测试正常后还原备份
先将备份文件拷贝到 gitlab/data/backups 目录下的,我用的wsl跑docker,可以在windows下直接复制,其他宿主可用docker cp 拷贝。
# shell中执行,等待恢复完成
# 此过程耗时按项目多寡决定,稍等片刻即可
bundle exec rake gitlab:backup:restore RAILS_ENV=production
等待出现上图即表示成功,打开网站查看即可。
如果,您认为阅读这篇博客让您有些收获,不妨点击一下下方【推荐】按钮。
如果,您希望获取更新的博客,不妨点击下方的的 【关注我】。
如果,博文能对您有所帮助,想给予我更多的鼓励,右方【打赏】随时为您开放(萌萌脸)
本文欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则视为侵权
专注更高率,自律更自信