当前位置: 首页 > 工具软件 > Docker Gitlab > 使用案例 >

docker gitlab跨版本升级

田丰
2023-12-01

升级路线

根据官网描述
https://docs.gitlab.com/ee/update/#installation-using-docker

升级路线

# 升级路线
11.11.8 -> 12.0.12 -> 12.1.17 -> 12.10.14 -> 13.0.14 -> 13.1.11 -> 13.2.10 -> 13.8.8 -> 13.12.15 -> 14.0.12 -> 14.6.2

# dockerhub官方链接: https://registry.hub.docker.com/r/gitlab/gitlab-ce
# 因公司gitlab不能停服,需要下载原始版本
docker pull gitlab/gitlab-ce:11.9.6-ce.0

# 以下是升级需要的镜像
docker pull gitlab/gitlab-ce:11.11.8-ce.0
docker pull gitlab/gitlab-ce:12.0.12-ce.0
docker pull gitlab/gitlab-ce:12.1.17-ce.0
docker pull gitlab/gitlab-ce:12.10.14-ce.0
docker pull gitlab/gitlab-ce:13.0.14-ce.0
docker pull gitlab/gitlab-ce:13.1.11-ce.0
docker pull gitlab/gitlab-ce:13.2.10-ce.0
docker pull gitlab/gitlab-ce:13.8.8-ce.0
docker pull gitlab/gitlab-ce:13.12.15-ce.0
docker pull gitlab/gitlab-ce:14.0.12-ce.0
docker pull gitlab/gitlab-ce:14.9.0-ce.0

找一台服务器做升级

# 拉取原始镜像
docker pull gitlab/gitlab-ce:11.9.6-ce.0

#创建 vim .env
GP=/home/gestep/data/gitlabs

#创建文件 vim docker-composes.yaml
version: '3'
services:
  web:
    image: 'gitlab/gitlab-ce:14.9.0-ce.0'  #镜像版本
    restart: always
    hostname: '192.168.2.21'
    container_name: 'gitlab'
    environment:
      TZ: 'Asia/Shanghai'
      GITLAB_OMNIBUS_CONFIG: |
        external_url  'http://192.168.2.21:9011'
        gitlab_rails['gitlab_shell_ssh_port'] = 9922
        nginx['listen_port'] = 80
    ports:
      - '9011:80'
      - '8443:443'
      - '9922:22'
    volumes:
      - ${GP}/config:/etc/gitlab
      - ${GP}/data:/var/opt/gitlab
      - ${GP}/logs:/var/log/gitlab

部署

docker pull gitlab/gitlab-ce:11.9.6-ce.0

cd /home/gestep/devops
mkdir gitlabs
# 依次替换镜像版本号
docker-composes -f docker-composes.yaml up -d
# 查看日志
docker logs -f gitlab
# 停止
docker-composes -f docker-composes.yaml down

重复以上操作

备份与恢复

docker exec -ti gitlab /bin/bash
# 备份
gitlab-rake gitlab:backup:create CRON=1

# 恢复
gitlab-rake gitlab:backup:restore

 类似资料: