どうも、katです。
今回は、mattermostのバージョンアップ方法について書いていこうと思います。
mattermostはdockerで入れる方法とアプリをサーバーに直接ダウンロードして使う方法があります。
今回はそのうちdocker版のバージョンアップ方法になります。
ちなみに個人的にはインストールもバージョンアップもdocker版のほうが断然楽なので、可能であればdockerがおすすめです。
バックアップ作成
まずはバージョンアップに失敗した際に戻せるよう全体のバックアップをとっておきます。
$ sudo cp -R {mattermostのインストールディレクトリ} docker_bk
私の環境の場合は以下のコマンドで行いました。
$ sudo cp -R docker docker_bk
コンテナ停止
次にバージョンアップ前に起動中のコンテナを停止しておきます。
まずはmattermostのインストールディレクトリに移動します。
$ cd ~/{mattermostのインストールディレクトリ}
私の環境の場合は以下のコマンドで行いました。
$ cd ~/docker
起動中のコンテナ名を確認します。
$ sudo docker ps
起動中のコンテナを停止します。(停止するコンテナ名は上で確認したもの)
$ sudo docker stop {postgresのコンテナ}
$ sudo docker stop {nginxのコンテナ}
$ sudo docker stop {mattermostのコンテナ}
私の環境の場合は以下でした。
$ sudo docker stop docker_postgres_1
$ sudo docker stop nginx_mattermost
$ sudo docker stop docker_mattermost_1
環境変数書き換え
環境変数に定義してあるmattermostのバージョンを更新したいバージョンに書き換えます。
まずはenvファイルを書き換えます。
$ vi .env
MATTERMOST_IMAGE_TAG={現在のバージョン(7.1など)}
↓
MATTERMOST_IMAGE_TAG={更新後のバージョン(9.1など)}
docker立ち上げ
ここまで完了したら、dockerを起動します。
$ sudo docker-compose -f docker-compose.yml -f docker-compose.nginx.yml up -d
起動後、mattermostのweb画面からバージョンが更新されていることを確認します。
アップデート失敗時
もしアップデートに失敗した場合は「バックアップ作成」で作成しておいたバックアップをリストアします。
$ sudo rm -rf docker
$ sudo mv docker_bk docker
$ cd docker
$ sudo docker-compose -f docker-compose.yml -f docker-compose.nginx.yml up -d
最後に
いかがだったでしょうか?
個人的にはdocker版だとバージョンアップがかなり簡単だと感じました。
ここまで簡単にできるのであれば、そもそもmattermostのシステムコンソール画面からでも可能なのでは?と思ったりするのですが、難しいんですかね。
いつかは画面からポチッと押すだけでバージョンアップできるといいなと思いました。
以上、Mattermost(docker版)のバージョンアップ方法でした〜。