概要
- Mattermostのサーバーのバージョンが11に
- Mattermost 11はPostgreSQL 14を最低バージョンとして要求
mattermost/dockerの.env.sampleは相変わらずバージョンタグとして13-alpineを要求- MattermostのPostgreSQLサーバーのアップグレードが必要
- つまりマイグレーションも必要
- Few minutesで終わるって言ってるけどそんなわけない
pullする前にすること
まずはバックアップ。 確実にやること。
docker exec -t $continer_id pg_dumpall -U mmuser > ${backup_file_path}.sql停止
docker downデータディレクトリを(バックアップとして)逃がす
mv volumes/db/var/lib/postgresql/data ${somewhere_put_to_backup_dir}.envのPOSTGRES_IMAGE_TAGを編集
POSTGRES_IMAGE_TAG=15-alpinepullしてから復元まで
pull
docker pulldocker-compose.ymlのmattermostの部分をコメントアウトする。
というか、postgres以外を外す。
cp docker-compose.yml docker-compose.yml.origしてもとに戻せるようにしておくといい。
VimであればCtrl+VでVisual
Blockに入り、まとめて選択してIで先頭に#をいれるのが簡単。
# mattermost:
# ...
upする
docker compose up -d --buildPostgreSQLのデータ復元
docker exec -i $container_id psql -U mmuser -d mattermost < ${backup_file_path}.sqlパスワードの問題が出るので、ログイン
docker compose exec -it postgres psql -U mmuser -d mattermostパスワードを設定。
パスワードは.envにあるはず。
ALTER ROLE mmuser WITH PASSWORD 'your_password';
起動
停止
docker compose downdocker-compose.ymlを戻す
mv docker-compose.yml.orig docker-compose.ymlリビルド起動
docker compose -f docker-compose.yml -f docker-compose.without-nginx.yml up -d --build