Docker の Mattermost をアップグレードする

最近 iPhone にインストールした Mattermost を起動すると、Mattermost サーバーをアップグレードせよとメッセージが出るようになった。アップグレードしないと問題が生じる場合があるらしいので、することにした。

環境:
・VMware vSphere Hypervisor 7.0U3g(英語環境)
・VMware Photon OS 5.0
・Mattermost(Docker) 7.1.8
・Nginx などは使わず CloudFlare で公開

(1)まずは念のためコンテナをイメージ化してバックアップだ。

$ docker ps
$ docker stop {コンテナ名}
$ docker commit {CONTAINER ID} {任意のイメージ名}

(2)僕は Mattermost を docker-compose でインストールしている。

Mattermost 用のディレクトリー名が docker だとしよう。これは念のためバックアップとして残しておき、新たに docker2 というディレクトリー名を作成することにする。

以下のコマンドで GitHub から最新版 Mattermost をクローンするが、末尾にそのディレクトリー名を指定している。

$ git clone https://github.com/mattermost/docker docker2

(3)現在の Mattermost のデータがあるディレクトリーが /docker/volumes/ 以下なので、これを docker2 ディレクトリーへコピーする。

$ sudo cp -r docker/volumes/ docker2/

(4)以降は Mattermost をインストールしたときと手順が同じだ。

まず docker3 ディレクトリーへ移動。

$ cd docker3

(5)3のディレクトリーの所有権を変更。

$ sudo chown -R 2000:2000 ./volumes/app/mattermost

(6)最新の設定ファイルのサンプルをコピーして .env というファイルを作成する。

$ cp env.example .env

.env では特に以下を編集する。

・DOMAIN={ドメイン名}
・MATTERMOST_IMAGE=mattermost-team-edition
・TZ=Asia/Tokyo
・RESTART_POLICY=always

(7)Mattermost を起動する。

$ sudo docker-compose -f docker-compose.yml -f docker-compose.without-nginx.yml up -d

最初 ERROR: An HTTP request took too long to complete. Retry with --verbose to obtain debug information. などと表示されてコンテナが起動しなかったが、再度コマンドを実行することで無事 Mattermost が起動した。

バージョン 7.8.11 にアップグレードされた。

参考:
GitHub - mattermost/docker: Install Mattermost server via Docker
https://github.com/mattermost/docker

ディレクトリ名を指定してクローンする方法 - Qiita
https://qiita.com/ponsuke0531/items/de829343ed083d9efac8

ファイルやディレクトリをコピーするcpコマンドの使い方!【Linuxコマンド集】
https://eng-entrance.com/linux_command_cp

Upgrading MM Docker Install - Troubleshooting - Mattermost Discussion Forums
https://forum.mattermost.com/t/upgrading-mm-docker-install/14887


この記事が気に入ったらサポートをしてみませんか?