Docker版Meilisearchをv0.29.1からv1.1.1(prototype-japanese-2)にバージョンアップしたのでその手順です。
(2024.04.10追記)prototype-japanese-10まで同様の手順でバージョンアップできました。
Docker版Meilisearchはこちら。
https://www.meilisearch.com/docs/learn/cookbooks/docker
基本的には下記アップデート手順をDocker向けにしただけです。
https://www.meilisearch.com/docs/learn/update_and_migration/updating
composeを利用してDocker運用していることとします。
version: "3"
services:
meilisearch:
container_name: meilisearch
image: getmeili/meilisearch:{{ tag }}
volumes:
- /meili_data:/meili_data:cached
environment:
- MEILI_MASTER_KEY={{ master_key }}
- MEILI_ENV={{ target }}
ports:
- "80:7700"
restart: always
データをDumpsする
curl \
-X POST 'http://<<MeilisearchのFQDN>>/dumps' \
-H 'Authorization: Bearer <<APIKey>>'
タスクIDが返却されるので控えておく。
タスクを監視してsucceededを待つ
curl \
-X GET 'http://<<MeilisearchのFQDN>>/tasks/<<タスクID>>' \
-H 'Authorization: Bearer <<APIKey>>'
ダンプファイル名を確認する(下記にあるのでファイル名を控えておく)
/meili_data/dumps/<<ダンプファイル名>>
Dockerを停止する
docker compose stop
データを移動
sudo mv /meili_data/data.ms /tmp/data.ms
このファイルはバックアップなので、万が一アップデートが失敗した場合はバージョンを戻してファイルを元の場所に移動してください。
docker-compose.ymlのバージョンを meilisearch:prototype-japanese-2 にする
image: getmeili/meilisearch:prototype-japanese-2
(2023.5.30時点のものです)
バージョンアップ
docker compose pull
Dumpを取り込む
docker run -it --rm -p 7700:7700 -v /meili_data:/meili_data getmeili/meilisearch:prototype-japanese-2 meilisearch --import-dump /meili_data/dumps/<<ダンプファイル名>>
※dockerのイメージのバージョンに応じてコマンドを変更してください。
※最後、Ctrl-C等で抜けてください。
Meilisearchを起動
docker compose up -d