migrate コマンド操作
データ移行処理を行う migrate コマンドの操作を紹介します。
api コンテナのアップグレード時に自動実行されるため、特別な理由がない限り、手動実行する必要はありません。
アップグレード
バージョンを指定しない場合は api コンテナの ucidm バージョンを使ってマイグレーション処理が実行されます。
$ docker compose exec -it api /bin/migrate db -type up
-version で任意のバージョンを指定してアップグレードします。
$ docker compose exec -it api /bin/migrate db -type up -version 1.7.1
-funcName で特定のマイグレーション処理のみに限定してアップグレードします。
$ docker compose exec -it api /bin/migrate db -type up -version 1.7.1 -funcName Session
ダウングレード
アップグレードによって変更した内容を元に戻したいときに実行します。データ構造上の変更であれば元に戻せます。但し、アップグレードによって一部のデータを削除してしまうような変更に対しては元の値に戻すことはできません。
1.7.1 のアップグレードによるマイグレーション処理を元に戻したいときは -version に 1.7.1 を指定します。
$ docker compose exec -it api /bin/migrate db -type down -version 1.7.1
-funcName で特定のマイグレーション処理のみに限定してダウングレードします。
$ docker compose exec -it api /bin/migrate db -type down -version 1.7.1 -funcName Session