2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Gitlab on Dockerのバージョンアップ

Last updated at Posted at 2019-08-23

やりたいこと

・Gitlab のバージョンが古いのでなんとかしたい
・運用しているGitlab をバージョンアップする前に検証用GitLabを作成する
・検証機で動作確認が取れたら運用しているコンテナ上のGitLabをバージョンアップする
・この記事では検証機を作ってバージョンアップを実施する過程を記しています

前提

OS Linux Ubuntu インストール済
Docker 19.03.1 インストール済
Gitlab (前)11.11.2 (後)当時の最新

Dockerを使ってGitLabを導入する

1.バージョンを指定してGitLabをDockerコンテナで立ち上げる(今回は11.11.2を導入)

sudo docker run --detach \
  --hostname gitlab_host \
  --publish 443:443 --publish 80:80 --publish 22:22 \
  --name gitlab \
  --restart always \
  --volume /opt/docker/gitlab/etc:/etc/gitlab \
  --volume /opt/docker/gitlab/var/log:/var/log/gitlab\
  --volume /opt/docker/gitlab/var/opt:/var/opt/gitlab gitlab/gitlab-ce:11.11.2-ce.0

2.サーバーのIPにアクセスして検証用GitLabが立ち上がったことを確認する

バックアップファイルを配置する

運用しているGitLabからバックアップファイル「~_gitlab_backup.tar」を取得し、
検証用GitLabのVolumeに指定したディレクトリ内であればどこでもよいので配置する
(/opt/docker/gitlab/varとか)

以下のコマンドでコンテナ内に入り、バックアップファイルを移動する

#コンテナの中に入る(すでに入っている場合は省略)
docker exec -it gitlab /bin/bash
mv [バックアップファイル] /var/opt/gitlab/backups

リストアを実施する

**

#コンテナの中に入る(すでに入っている場合は省略)
docker exec -it gitlab /bin/bash

#「/var/opt/gitlab/backups」配下に「_gitlab_backup.tar」を移動する

# 一部停止
gitlab-ctl restart
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq

# 停止を確認
gitlab-ctl status |grep down

# リストアを実行
# バックアップファイルが複数ある場合は「BACKUP=」でバージョンを指定すること
gitlab-rake gitlab:backup:restore 

# リストアを確認
gitlab-ctl restart
gitlab-rake gitlab:check SANITIZE=true

検証用GitLabにアクセスし、データのリストアを確認する

バージョンをアップする

上記で作成したDockerコンテナのプロセス、イメージを削除する
アップしたいバージョンを指定して、sudo docker run ~を実行する

※注意
メジャーバージョンを上げるときは、マイナーバージョンの最新に上げてからが推奨されている

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?