docker之gitlab 安装与升级

docker之gitlab 安装与升级

Scroll Down

gitlab docker 安装

从gitlab 11.7版本之后官方版支持本地化语言 默认设置路径为seting->preferences->Localization->Language

gitlab官方docker地址

gitlab-ce 官方docker地址为hub

如何安装gitlab

docker-compose.yml

version: "3.1"
services:
  gitlab:
    image: 'gitlab/gitlab-ce'
    restart: always
    hostname: '服务器域名或ip 192.168.6.128'
    environment:
      TZ: "Asia/Shanghai"
      GITLAB_OMNIBUS_CONFIG: |
              external_url '服务器域名/ http://gitlab.xex.cc'
              gitlab_rails['gitlab_shell_ssh_port'] = ssh端口 2222
              gitlab_rails['time_zone'] = 'Asia/Shanghai'
              unicorn['port'] = 端口 8888

    ports:
      - '32775:80'
      - '8443:443'  
      - '2222:22'
    volumes:
      - ./config:/etc/gitlab
      - ./data:/var/opt/gitlab
      - ./logs:/var/log/gitlab
  • /etc/gitlab 为gitlab的config
  • /var/opt/gitlab 为gitlab的data 重要
  • /var/log/gitlab为gitlab的日志

gitlab 如何升级,

  1. 备份原gitlab

    docker exec -t <your container name> gitlab-rake gitlab:backup:create

    备份文件位于宿主机的 ./data/backups 目录下。

    配置文件位于 ./config 文件夹内。

  2. 新机或者新版本启动

    # 运行容器
    docker run xxx
    # 停止容器
    docker stop gitlab 
    # 数据文件和配置文件替换
    cp 1493107454_2017_04_25_9.1.0_gitlab_backup.tar  ./data/backups 
    cp config  ./config
    

    其中cp的左边是旧版本 右边是新版本

    这样做的目的是产生一样的文件路径

  3. 重新运行容器,进入容器后断开 gitlab 与 数据库的连接

    # 进入容器
    docker exec -it <your container name> /bin/bash
    gitlab-ctl stop unicorn
    gitlab-ctl stop sidekiq
    # 验证
    gitlab-ctl status
    # 开始恢复
    sudo gitlab-rake gitlab:backup:restore BACKUP=1493107454_2017_04_25_9.1.0
    
  4. 重启 gitlab 并验证:

    重启gitlab

注意

如果gitlab升级跨版本过大 会出现数据库太旧无法升级的问题

请查看 gitlab版本差异化升级

https://docs.gitlab.com/ee/policy/maintenance.html#upgrade-recommendations

Thanks

作者: coder爱唱歌
链接: 使用docker迁移并且升级gitlab到最新版本
来源: 简书