专业编程基础技术教程

网站首页 > 基础教程 正文

docker中的gitlab数据备份恢复以及升级

ccvgpt 2024-08-04 12:21:47 基础教程 12 ℃

备份

1. 进入容器 docker exec -it gitlab /bin/bash

2. 执行gitlab-rake gitlab:backup:create 备份命令,默认将备份文件保存至/var/opt/gitlab/backups/(注意:此备份不会备份json文件和rb文件,需要手动复制!!!)

docker中的gitlab数据备份恢复以及升级



3. 备份完成后需要进入目录查看

cd /var/opt/gitlab/backups/



4. exit退出容器,将备份文件拉取到宿主机:

docker cp gitlab:/var/opt/gitlab/backups/1655195319_2022_06_14_14.2.6_gitlab_backup.tar /data/bak/gitlab/20220614

5. 将json和rb文件也复制到备份目录下

docker cp gitlab:/etc/gitlab/gitlab-secrets.json /data/bak/gitlab/20220614/

docker cp gitlab:/etc/gitlab/gitlab.rb /data/bak/gitlab/20220614/


恢复

1. 查看容器

#输入命令查看docker中所有容器
#docker ps 查看所有运行中的容器、-a可以列出所有容器包括未运行的
docker ps -a

2. 先停止本来的容器
docker stop gitlab

3. 复制备份文件到容器内

docker cp /data2/git-back/1641520067_2022_01_07_12.2.5_gitlab_backup.tar gitlab:/var/opt/gitlab/backups

docker cp /data2/git-back/ gitlab-secrets.json gitlab: /etc/gitlab/

docker cp /data2/git-back/ gitlab.rb gitlab: /etc/gitlab/

4. 恢复数据

gitlab-rake gitlab:backup:restore BACKUP=1606752150_2020_11_30_11.10.1

5. 假如页面上,分享地址没有ip

修改/etc/gitlab/ gitlab.rb中的external_url



6. 页面点击项目报404,清除缓存

gitlab-rake cache:clear

升级

1. 先按照上面的步骤备份

2. 确认升级路线(只能一个版本一个版本的升级)

https://docs.gitlab.com/ee/update/



3. #停止gitllab服务

docker stop gitlab && docker rm gitlab

4. 升级(一定得有目录挂载)

docker run -d \

-p 9002:22 -p 9000:80 -p 9001:443 \

--name gitlab --restart always --privileged=true \

-v /opt/gitlab/config:/etc/gitlab \

-v /opt/gitlab/logs:/var/log/gitlab \

-v /opt/gitlab/data:/var/opt/gitlab \

gitlab/gitlab-ce:14.6.2-ce.0

5. 假如登录进去后报500


执行下面命令,升级数据库关系

?gitlab-rake db:migrate

?gitlab-ctl reconfigure

?gitlab-ctl restart

Tags:

最近发表
标签列表