一、选择版本

GitLab 12.2或更高版本:

  docker exec -t gitlab-backup create

GitLab 12.1和更早版本:

  gitlab-rake gitlab:backup:create

1. 查看版本方法

  进入到容器内部,执行以下命令。

    cat /opt/gitlab/embedded/service/gitlab-rails/VERSION

二、创建备份文件

1.备份

  我目前使用的GitLab版本为13.4.0,因此选用第一个命令。

    docker exec -t <container name> gitlab-backup create

  执行此命令之后会在/var/opt/gitlab/backups/目录下生成一个压缩包,若在此路径下找不到,请查看gitlab.rb文件,找到gitlab_rails ['backup_path']选项,该选项指定了备份文件路径。

  路径查找方法:

  使用vim工具打开gitlab.rb文件。(若gitlab.rb目录不正确,请自行更换)

    vim /etc/gitlab/gitlab.rb

  输入:进入命令模式,输入/backup_path进行全局搜索即可。

2.从容器内部导出备份文件到Windows目录

  使用如下命令导出

    docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH

  如下所示

    docker cp bd:/var/opt/gitlab/backups/1604902035_2020_11_09_13.4.0_gitlab_backup.tar G:/

3.使用同样方法导出gitlab.rb文件(可选)

  略

三、恢复

使用一下命令把原来的文件重新发在backups目录下

    docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH

重新创建一个gitlab容器,注意版本要相同,然后执行如下命令

    docker exec -it <name of container> gitlab-ctl stop unicorn
docker exec -it <name of container> gitlab-ctl stop puma
docker exec -it <name of container> gitlab-ctl stop sidekiq
docker exec -it <name of container> gitlab-backup restore BACKUP=<备份文件名>

或者

    docker exec -it <name of container> gitlab-ctl stop unicorn
docker exec -it <name of container> gitlab-ctl stop puma
docker exec -it <name of container> gitlab-ctl stop sidekiq
docker exec -it <name of container> gitlab-backup restore

Docker中的Gitlab数据迁移的更多相关文章

  1. docker中的gitlab数据备份、迁移和升级

    前期准备 数据备份 记录gitlab运行命令: docker run -itd --name gitlab \ --hostname gitlab.suniot.cn \ -p 443:443 -p ...

  2. Docker中安装Gitlab详细全教程

    安装Docker: note: https://docs.docker.com/engine/install/centos/ 1 yum install -y yum-utils 2 yum-conf ...

  3. gitlab数据迁移到docker容器

    需求:想把服务器上的gitlab迁移到docker容器里面注意:gitlab的迁移,必须保持gitlab的版本一致,此处使用的是:8.4.3,数据库版本和类型一致,此处使用的是postgresql 9 ...

  4. gitlab数据迁移

    由于gitlab是默认安装的,随着公司代码越来越多,导致gitlab数据目录空间不足,出现无法访问gitlab了. 磁盘空间: /home有1.8T的空间一直没用上! 现在打算将原有代码目录迁移到新目 ...

  5. 在docker 中搭建gitlab环境

    docker run --name gitlab -it -p : -p : -p : \ --env 'GITLAB_SECRETS_DB_KEY_BASE=Rpwq35wjLJ5N6CrkvdXs ...

  6. docker中搭建gitlab

    1, 下载镜像 docker pull sameersbn/gitlab:7.4.3 # 下载gitlab镜像 docker pull sameersbn/mysql:latest # 下载gitla ...

  7. gitlab数据迁移至其他gitlb服务器上

    需求: A : 待迁移服务器,上边存有数据 B:接收项目得服务器,本身存在数据 验证方案: 一,搭建gitlab8.15.2 OS:rhel7.4 yum install policycoreutil ...

  8. 【Linux】宝塔上 GitLab数据迁移修改配置后nginx无法启动

    背景: 服务器A 向 服务器B 迁移数据,修改配置重启.发现gitlab的 nginx 无法启动. 查找原因 gitlab-ctl tail 错误信息: 网上查了查,似乎是宝塔的问题, 原因应该是为了 ...

  9. iserver中的服务数据迁移

    今天需要将iserver测试服务器上的空间数据服务(数据源是Oracle Plus)迁移到客户的正式服务器,原想需要很大的工作量,其实是这样简单: 一.保证客户的iserver环境都已安装正确.对于o ...

  10. docker中MySQL镜像数据,日志,配置持久化

    Docker的MySQL8镜像, 实行数据持久化 version: '3.1' services: mysql-itoken-service-admin: restart: always image: ...

随机推荐

  1. java设计模式---总则

    设计模式总则 一.概述 1.什么是设计模式 设计模式是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结. 解释下: 分类编目:就是说可以找到一些特征去划分这些设计模式,从而进行分类. ...

  2. Superset 筛选器理解

    免于被筛选器筛选,dashboard中,编辑,高级,"__time_range": {"scope": ["ROOT_ID"], " ...

  3. Kotlin:【数字类型】安全转换函数

  4. el-table合计行

    用到属性 showSummary 是否显示合计,方法 summaryMethod 计算合计的自定义方法. <el-table ref="elTable" :data=&quo ...

  5. 基于Java语言的开源能管平台才是最适合国内的能源管理平台

    在"双碳"战略背景下,能源管理已成为政府.企业实现可持续发展的必经之路.面对市场上各类能源管理平台,为何基于Java语言的开源解决方案才是最佳选择?本文将为您揭晓答案,并向您推荐我 ...

  6. 考拉 T_Q_X 的博客搬运(搬运)

    博客搬迁现场直播 各位观众们大家好,欢迎来到新闻透视 今天为您直播某菜鸡oier tqx 的博客搬迁现场. Q:请问tqx,您为什么要将博客从CSDN搬迁到博客园呢? tqx:懂得都懂,不懂的我也不多 ...

  7. AI 时代 UI 设计的哲学与伦理

    无论是在桌面.移动应用,还是未来可能出现的全新形态中,空间直觉始终是人类在数字世界中导航的根本. 丹尼尔·罗德里格斯 图片来源:维基百科 想象一下,踏入1427年佛罗伦萨圣母玛利亚诺维拉教堂昏暗的光线 ...

  8. 百万架构师第三十七课:RabbitMq:高可用集群搭建步骤|JavaGuide

    安装环境 Centos-7 三台虚拟机 192.168.8.150(磁盘节点) 192.168.8.45 (内存节点) 192.168.8.40 (内存节点) 一.安装Erlang 1.erlang ...

  9. 图解MySQL【日志】——Binlog

    Binlog(Binary Log,归档日志) 为什么需要 Binlog? Binlog 是 MySQL 中的二进制日志,用于记录数据库的所有写操作(INSERT.UPDATE.DELETE 等) 1 ...

  10. el-table 数据嵌套循环

     <el-table :data="tableData"     :show-header="false"     style="width: ...