首页 > 其他分享 >gitlab迁移到新的docker容器中

gitlab迁移到新的docker容器中

时间:2023-09-18 15:38:04浏览次数:53  
标签:容器 compose gitlab smtp rails var docker

迁移步骤
1、备份旧gitlab数据

gitlab-rake gitlab:backup:create

默认会保存在 /var/opt/gitlab/backups ,实际情况可以使用find查找下文件路径

2、在新服务器上使用docker搭建相同版本的gitlab

version: '3'
services:
  gitlab:
    image: 'gitlab/gitlab-ce:11.9.8-ce.0'
    restart: always
    container_name: compose-gitlab-ce
    hostname: 'gitlab.example.com'
    environment:
      TZ: 'Asia/Shanghai'
      GITLAB_OMNIBUS_CONFIG: |
        external_url 'http://gitlab.example.com'
        gitlab_rails['time_zone'] = 'Asia/Shanghai'
        # 需要配置到 gitlab.rb 中的配置可以在这里配置,每个配置一行,注意缩进。
        # 比如下面的电子邮件的配置:
        # gitlab_rails['smtp_enable'] = true
        # gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
        # gitlab_rails['smtp_port'] = 465
        # gitlab_rails['smtp_user_name'] = "[email protected]"
        # gitlab_rails['smtp_password'] = "password"
        # gitlab_rails['smtp_authentication'] = "login"
        # gitlab_rails['smtp_enable_starttls_auto'] = true
        # gitlab_rails['smtp_tls'] = true
        # gitlab_rails['gitlab_email_from'] = '[email protected]'
    ports:
      - '80:80'
      - '443:443'
      - '2222:22'
    volumes:
      - ./config:/etc/gitlab
      - ./data:/var/opt/gitlab
      - ./logs:/var/log/gitlab

在docker-compose.yml文件的同级目录创建三个目录:

mkdir config
mkdir data
mkdir logs

执行 docker-compose up -d 启动该容器,启动的时间会比较长 耐心等待 5分钟左右!!

3、拷贝文件到新服务器的docker中

docker cp ./1575650870_2019_12_06_11.9.8_gitlab_backup.tar compose-gitlab-ce:/var/opt/gitlab/backups

4、重建数据库
tips 1575650870_2019_12_06_11.9.8_gitlab_backup.tar 这个文件是第一步备份的时候生成的

docker exec -it compose-gitlab-ce /bin/bash
chmod 777 -R /var/opt/gitlab/backups/
gitlab-rake gitlab:backup:restore BACKUP=1575650870_2019_12_06_11.9.8

迁移完成!!! 重启 gitlab 并验证

gitlab-ctl restart
gitlab-rake gitlab:check SANITIZE=true

注意事项
gitlab版本必须一致,否则迁移失败

标签:容器,compose,gitlab,smtp,rails,var,docker
From: https://www.cnblogs.com/banger/p/17711955.html

相关文章

  • docker容器里gitlab备份
    一、数据的备份docker容器里的gitlab备份chatgpt/2023/9/185:35:56一、数据的备份1.进入容器dockerexec-itgitlab/bin/bash2、执行备份命令gitlab-rakegitlab:backup:create默认将备份文件保存至/var/opt/gitlab/backups/3.将json和rb文件也复制到备份目录下......
  • 如何解决docker端口映射不能访问的问题?
    在企业数字化转型过程中,Docker作为一种常用的容器技术,一个非常强大的功能就是通过端口映射将容器内的服务发布到外部。然而,有时候我们会遇到无法从外部访问容器内部文件的问题,导致服务无法正常运行。下面将对这个问题进行深入剖析并给出解决方案。一、【docker端口映射不能正常访......
  • win10下docker安装 ubuntu18.04.
      参考 Win10使用Docker安装Ubuntu环境-知乎(zhihu.com)旧版WSL的手动安装步骤|MicrosoftLearn......
  • docker install ubuntu ssh
    https://tecadmin.net/setting-up-ubuntu-docker-container-with-ssh-access/ Dockerisanopen-sourceplatformthatallowsdeveloperstoautomatethedeployment,scaling,andmanagementofapplications.Itdoessobycreatinglightweight,self-sufficientco......
  • k8s之docker基础+部署
    docker基础+部署1、docker基础概念1、统一标准应用构建程序打包dockerbuild...images应用分享镜像存放仓库dockerhub应用运行统一镜像dockerrun容器化2、资源隔离cpu、内存资源隔离网络隔离用户、用户组隔离...2、架构docker_host安......
  • Docker分享
    前置知识本篇文章主要分享容器技术依赖的Namespace,在开始之前,有一些前置知识需要先阐明,也许它们很零碎,但开始之前我还是希望你能够完全理解这些概念。前置知识这一段除了补短之外,还有一个目的,把一个很多人没解释清楚的问题解释清楚:什么是容器,和虚拟机有什么区别?进程树模型:fo......
  • Spring源码分析(一)Spring容器及Spring Bean
    (一)Spring容器及SpringBean1.Spring容器1.1什么是容器官网中有一句话Theorg.springframework.context.ApplicationContextinterfacerepresentstheSpringIoCcontainerandisresponsibleforinstantiating,configuring,andassemblingthebeans.翻译下来的意思是:Spr......
  • Docker中如何将容器重新打包成镜像
    最近做项目,建好了不少不同规则的容器。需要以后重复利用,于是重新打包为镜像。使用以下命令,查看容器名称:dockerps-aCONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTSNAMES3e08cb5b24f8gareenbeam/kyv10:v4......
  • 使用TestContainers在Docker中进行集成测试
    现代软件应用很少独立工作。典型的应用程序会与几个外部系统进行通信,如:数据库、消息系统、缓存提供商其他第三方服务。你应该编写测试确保一切正常运行。单元测试有助于隔离地测试业务逻辑,不涉及任何外部服务。它们易于编写并提供几乎即时的反馈。有了单元测试还不够,集......
  • ⛳ Docker 安装、配置和详细使用教程-Win10专业版
    ⛳Docker安装、配置和详细使用教程-Win10专业版......