Mattermostは最低限のスペックで試験運用中だったため、前回Jitsiを入れた高スペックサーバーに引っ越し。
直インストールから、Caddy + Docker運用へ変更。
バージョンは現行の10.12.4のまま移行。
旧サーバー
・Mattermost停止
systemctl stop mattermost
(起動する場合は、systemctl start mattermost)
・MySQLダンプ
mysqldump –no-tablespaces –default-character-set=utf8mb4 -u mattermost_user -p●●● mattermost_db > backup.sql
・データベース名を調べる
mysql -u mattermost_user -p●●●
show databases;
・データディレクトリ圧縮
cd /opt/mattermost
tar czvf mattermost_data.tar.gz data/
(/opt/mattermost/data/をカレントディレクトリにmattermost_data.tar.gzという圧縮ファイルにして保存)
・設定ファイルコピー(復旧に使うわけではない予備)
cp /opt/mattermost/config/config.json ./
(Mattermostの設定ファイルを今いるディレクトリにコピー)
・移行先サーバーにアップロード
新サーバー
・Caddy(既に運用状態で設定ファイルだけ変更)
cd /home/caddy
vim Caddyfile
docker compose down
docker compose up -d
・Mattermost
cd /home
mkdir mattermost
cd mattermost
vim docker-compose.yml
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
services: db: image: mysql:8.0 container_name: mattermost-db restart: unless-stopped environment: MYSQL_ROOT_PASSWORD: ●●● MYSQL_DATABASE: mattermost MYSQL_USER: mmuser MYSQL_PASSWORD: ●●● volumes: - ./volumes/db:/var/lib/mysql command: --default-authentication-plugin=mysql_native_password networks: - mattermost-internal mattermost: image: mattermost/mattermost-team-edition:release-10.12 container_name: mattermost-app command: mattermost server restart: unless-stopped depends_on: - db environment: MM_SQLSETTINGS_DRIVERNAME: mysql MM_SQLSETTINGS_DATASOURCE: mmuser:●●●@tcp(db:3306)/mattermost?charset=utf8mb4,utf8&writeTimeout=30s MM_SERVICESETTINGS_SITEURL: https://●●●.com volumes: - ./volumes/mattermost/config:/mattermost/config - ./volumes/mattermost/data:/mattermost/data - ./volumes/mattermost/logs:/mattermost/logs - ./volumes/mattermost/plugins:/mattermost/plugins networks: - mattermost-internal - localproxy networks: mattermost-internal: localproxy: external: true |
docker compose up -d
・データインポートのためDocker停止
docker stop mattermost-app
・SQLリストア
docker exec -i mattermost-db mysql –default-character-set=utf8mb4 -u mmuser -p●●● mattermost < backup.sql
・別ターミナルでプロセス確認する場合
docker exec -it mattermost-db mysql -u mmuser -p●●● -e “SHOW PROCESSLIST;”
・dataディレクトリ展開
※tarをdocker-compose.ymlと同じ階層に保存。
cd /home/mattermost
tar xzvf mattermost_data.tar.gz -C ./volumes/mattermost/
(tarを./volumes/mattermost/に解凍。tarにdataディレクトリを含んでいる)
・パーミッション
chown -R 2000:2000 /home/mattermost/volumes/mattermost/
・Docker開始
docker start mattermost-app
・エラーになる場合、AIプラグイン削除
rm -rf /home/mattermost/volumes/mattermost/plugins/mattermost-ai
docker restart mattermost-app
・DNSレコードのIPアドレス変更