docker容器里的gitlab备份

一、数据的备份

       1、进入容器;

       docker exec -it  be4c4727f3ae  bash

       2、执行备份命令;

       gitlab-rake gitlab:backup:create

如图

默认将备份文件保存至/var/opt/gitlab/backups/

如图

      3、将json和rb文件也备份--此备份不会备份json文件和rb文件,需要手动复制

          (1):退出容器;宿主机复制出备份文件

                   docker cp  be4c4727f3ae:var/opt/gitlab/backups/1672294041_2022_12_29_11.1.4_gitlab_backup.tar   /data/feng/

                   docker cp be4c4727f3ae:/etc/gitlab/gitlab-secrets.json  /data/feng/

                   docker cp  be4c4727f3ae:/etc/gitlab/gitlab.rb  /data/feng/

备份完成;

二、数据的恢复

我们启动新的容器,然后将刚才备份的文件拷贝到容器里,后面两个文件直接覆盖即可

1、docker cp /data/feng/1672294041_2022_12_29_11.1.4_gitlab_backup.tar  新容器ID:/var/opt/gitlab/backups/

     docker cp /data/feng/gitlab-secrets.json   新容器ID:/etc/gitlab/

     docker cp /data/feng/gitlab.rb   新容器ID:/etc/gitlab/

2、拷贝完之后,我们进入容器,进入备份目录,执行如下命令

     gitlab-rake gitlab:backup:restore BACKUP=1672294041_2022_12_29_11.1.4

     如果没有权限,则执行

     chmod 777 文件名

3、恢复之后,我们重新加载配置,并重启gitlab

     gitlab-ctl reconfigure 

     gitlab-ctl restart 

 

posted @ 2022-12-29 14:50  大日很忧伤  阅读(452)  评论(1编辑  收藏  举报