LoginSignup
3
5

More than 1 year has passed since last update.

Rancher 2.0 バージョンアップ

Last updated at Posted at 2018-08-13

Rancher をバージョンアップしようとしていつもいつもデータを吹っ飛ばしてしまうので、ミスらないようにシェルスクリプトを書きましたとさ。

1. 前提

Rancher シングルインストールが前提(HAとかMultiの場合はドキュメント読んで)
コンテナーIDは自分で埋め込み。
そのうち自動で取得するようにしてもいいかも。
バージョンも埋め込み(適当に誰かいい具合にして)。

2. シェルスクリプト

Upgrades and Rollbacks | Rancher Labs
https://rancher.com/docs/rancher/v2.x/en/upgrades/
このドキュメントそのままだけど、それでも、まあ失敗する奴もいるってことさ。

rancher2-upgrade.sh
#!/bin/bash

export RANCHER_CONTAINER_ID=<>
export RANCHER_CURRENT_VERSION_TAG=v2.0.2
export UPCOMING_VERSION=v2.0.6

docker ps
docker stop $RANCHER_CONTAINER_ID

docker create --volumes-from $RANCHER_CONTAINER_ID \
--name rancher-data rancher/rancher:$RANCHER_CURRENT_VERSION_TAG

docker run  --volumes-from rancher-data -v $PWD:/backup \
alpine tar zcvf /backup/rancher-data-backup-$RANCHER_CURRENT_VERSION_TAG.tar.gz /var/lib/rancher

docker pull rancher/rancher:$UPCOMING_VERSION

docker run -d --volumes-from rancher-data --restart=unless-stopped \
-p 80:80 -p 443:443 rancher/rancher:$UPCOMING_VERSION

gistに貼ったので適当にご利用ください。
https://gist.github.com/ynott/5c53809549a254f675baa00372499e70

3. 使い方

3.1 RANCHER_CONTAINER_ID

docker ps してもいいし、
sudo docker ps --filter ancestor=rancher/rancher --format "{{.ID}}"}
とかしてもいいかもね。

3.2 RANCHER_CURRENT_VERSION_TAG

適当に入れてください。

3.3 UPCOMING_VERSION

exportのところを Docker Store から探して
rancher/rancher Tags - Docker Store
https://store.docker.com/community/images/rancher/rancher/tags

バージョン指定する

例:v2.0.7

3.4 実行

$ bash ./rancher-upgrade.sh
でよかろうかと

3
5
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
3
5