-
Notifications
You must be signed in to change notification settings - Fork 24
Update to 1.6
Kosuke Tanabe edited this page Nov 9, 2025
·
23 revisions
Next-L Enju Leaf 1.6では、PostgreSQLを17に更新しており、このマイグレーション作業が必要になります。
- 警告: 必ずアプリケーションとデータベースのバックアップを取得してください!
- 注意: Next-L Enju Leaf 1.6へのアップデートの前に、必ず1.5.2以上にアップデートしておいてください。
- 注意: Docker Desktopをお使いの場合、必ず4.43.0以上にアップデートしておいてください。Docker Desktopをお使いでない場合、Docker Compose 2.38.0以上が必要になります。
PostgreSQLのバックアップを取得します。-cオプション(リストア時に既存のオブジェクトを削除する)を必ずつけてください。
docker compose run --rm web pg_dump -c -h postgres -U enju enju_leaf_production > tmp/enju_dump.sqlEnjuを停止します。
docker compose down新しいEnjuを取得します。
git fetch
git checkout 1.6
git pullコンテナをビルドします。
docker compose buildPostgreSQLのボリューム名を確認します。
docker compose volumes出力結果のうち、VOLUME_NAMEにpostgresと表示されているのが、PostgreSQLのボリューム名になります。
DRIVER VOLUME NAME
local enju_leaf_postgres
PostgreSQLのボリュームを削除します。ボリューム名を指定してください。この操作では古いデータベースを削除しますので、実行前に必ずバックアップを取得しておいてください。
docker volume rm enju_leaf_postgresPostgreSQLを起動します。
docker compose up -d postgresPostgreSQLのデータベースを作成します。
docker compose run --rm web bin/rake db:prepare
PostgreSQLのデータをリストアします。
docker compose run --rm web psql -h postgres -U enju enju_leaf_production -f tmp/enju_dump.sqlデータベースを更新します。
docker compose run --rm web bin/rake db:migrateCSSとJavaScriptを作成します。
docker compose run --rm web bin/rake assets:clobber
docker compose run --rm web yarn install
docker compose run --rm web bin/rake assets:precompilePostgreSQLを停止し、アプリケーションを起動します。
docker compose down
docker compose up -dSolrのインデックスを再作成します。
docker compose run --rm web bin/rake sunspot:reindexhttp://localhost:8080 を開き、アクセスできることを確認します。正常に動作することを確認したら、バックアップを削除します。
rm tmp/enju_dump.sql