
一般ガイドライン
Always make sure to back up your database before starting the upgrade process by runningdocker exec -it {db_container_name_or_id} pg_dumpall -U {postgres_user} > databases_backup.sql.
To restore backup, run cat databases_backup.sql | docker exec -i {db_container_name_or_id} psql -U {postgres_user}.
Docker Composeを使用している場合、次の手順に従います:
-
Twentyを実行しているホスト上のターミナルで、Twentyを停止します:
docker compose down -
docker-compose近くにある.envファイルの
TAG値を変更してバージョンをアップグレードします。 (v0.53のようにmajor.minorバージョンを使用することをお勧めします ) -
docker compose up -dでTwentyを再起動します。
バージョン固有のアップグレード手順
v1.0
こんにちは、Twenty v1.0! 🎉v0.60
パフォーマンス向上
All interactions with the metadata API have been optimized for better performance, particularly for object metadata manipulation and workspace creation operations. キャッシング戦略を見直し、可能な場合はデータベースクエリよりもキャッシュヒットを優先するようにしました。これにより、メタデータAPIオペレーションのパフォーマンスが大幅に向上しました。 アップグレード後にランタイムの問題が発生した場合は、キャッシュをフラッシュして最新の変更と同期させる必要があるかもしれません。 twenty-serverコンテナ内で次のコマンドを実行します:v0.55
Twentyインスタンスをv0.55イメージにアップグレードします。 もうコマンドを実行する必要はありません。新しいイメージがすべての必要な移行を自動的に行います。User does not have permission error
アップグレード後にほとんどの要求で承認エラーが発生した場合は、キャッシュをフラッシュして最新の権限を再計算する必要があるかもしれません。
あなたの twenty-server コンテナ内で次のコマンドを実行します:
v0.54
バージョン0.53 以降、手動の操作は必要ありません。
メタデータスキーマ廃止
データの取得を簡素化するために、metadata スキーマを core スキーマにマージしました。
upgrade コマンド内の migrate コマンドステップを統合しました。 サーバーまたはワーカーコンテナ内で migrate を手動で実行することはお勧めしません。
v0.53以降
0.53 以降、アップグレードは DockerFile 内でプログラム的に行われます。これはつまり、これ以降は手動でコマンドを実行する必要がないことを意味します。
メジャーバージョンを飛ばさずに順次インスタンスをアップグレードし続けることを確認してください(e.g. 0.43.3から0.44.0へのアップグレードは許可されていますが、0.43.1から0.45.0へのアップグレードはできません)。そうしないと、ワークスペースのバージョンが同期しないことが原因でランタイムエラーや機能の欠如が発生する可能性があります。
ワークスペースが正しく移行されたかを確認するには、データベース内の core.workspace テーブル内でそのバージョンを確認できます。
それは常にあなたの現在のTwentyのインスタンスの major.minor バージョンの範囲内である必要があります。あなたのインスタンスバージョンは、管理パネル( /settings/admin-panel にあり、データベース内でユーザーが canAccessFullAdminPanel プロパティを持っている場合にアクセス可能)にまたは twenty-server コンテナ内で echo $APP_VERSION を実行することで確認できます。
非同期化されたワークスペースバージョンを修正するには、対応するTwentyのバージョンから関連するアップグレードガイドに従って順次アップグレードし、それが目的のバージョンに到達するまで続ける必要があります。
auditLog の削除
監査ログ標準オブジェクトを削除しました。これにより、この移行後のバックアップサイズが大幅に縮小する可能性があります。
v0.51からv0.52
Twentyインスタンスをv0.52イメージにアップグレードします。私は 0.52.0 と 0.52.6 の間のバージョンでブロックされたワークスペースを持っています。
残念ながら、0.52.0 と 0.52.6 はdockerHubから完全に削除されました。
データベースでワークスペースバージョンを手動で 0.51.0 に更新し、twentyバージョン 0.52.11 を使用して、その直上のアップグレードガイドに従ってアップグレードする必要があります。
v0.50からv0.51
Twentyインスタンスをv0.51イメージにアップグレードします。v0.44.0からv0.50.0
Twentyインスタンスをv0.50.0イメージにアップグレードします。Docker-compose.ymlの変更
このバージョンには、worker サービスが server-local-data ボリュームにアクセスできるようにするための docker-compose.yml の変更が含まれています。
ローカルの docker-compose.yml をv0.50.0 docker-compose.ymlに更新してください。
v0.43.0からv0.44.0
Twentyインスタンスをv0.44.0イメージにアップグレードします。v0.42.0からv0.43.0
Twentyインスタンスをv0.43.0イメージにアップグレードします。docker-compose.ymlにおいてpostgres:16イメージへの切り替えも行いました。
( オプション 1 ) データベース移行
既存のpostgres-spiloイメージを保持するのは問題ありませんが、docker-compose.ymlでバージョンを0.43.0に固定する必要があります。( オプション 2 ) データベース移行
データベースを新しいpostgres:16イメージに移行したい場合は、次の手順に従ってください:- 古いpostgres-spiloコンテナからデータベースをダンプします。
- docker-compose.ymlを、新しいpostgres:16イメージを使用するようにアップグレードします。docker-compose.ymlを参照してください。
- データベースを新しいpostgres:16コンテナへ復元します。
v0.41.0からv0.42.0
Twentyインスタンスをv0.42.0イメージにアップグレードします。- 削除:
FRONT_PORT,FRONT_PROTOCOL,FRONT_DOMAIN,PORT - 追加:
FRONTEND_URL,NODE_PORT,MAX_NUMBER_OF_WORKSPACES_DELETED_PER_EXECUTION,MESSAGING_PROVIDER_MICROSOFT_ENABLED,CALENDAR_PROVIDER_MICROSOFT_ENABLED,IS_MICROSOFT_SYNC_ENABLED
v0.40.0からv0.41.0
Twentyインスタンスをv0.41.0イメージにアップグレードします。- 削除:
AUTH_MICROSOFT_TENANT_ID
v0.35.0からv0.40.0
Twentyインスタンスをv0.40.0イメージにアップグレードします。- 追加:
IS_EMAIL_VERIFICATION_REQUIRED,EMAIL_VERIFICATION_TOKEN_EXPIRES_IN,WORKFLOW_EXEC_THROTTLE_LIMIT,WORKFLOW_EXEC_THROTTLE_TTL
v0.34.0からv0.35.0
Twentyインスタンスをv0.35.0イメージにアップグレードします。yarn database:migrate:prod コマンドはデータベース構造(コアおよびメタデータスキーマ)の移行を適用します
yarn command:prod upgrade-0.35 はすべてのワークスペースのデータ移行を行います。
環境変数
ENABLE_DB_MIGRATIONSをDISABLE_DB_MIGRATIONSに置き換えました(デフォルト値はfalseで、設定する必要はないと思われます)
v0.33.0からv0.34.0
Twentyインスタンスをv0.34.0イメージにアップグレードします。yarn database:migrate:prod コマンドはデータベース構造(コアおよびメタデータスキーマ)の移行を適用します
yarn command:prod upgrade-0.34 はすべてのワークスペースのデータ移行を行います。
環境変数
- 削除:
FRONT_BASE_URL - 追加:
FRONT_DOMAIN,FRONT_PROTOCOL,FRONT_PORT
FRONT_DOMAIN、FRONT_PROTOCOL、FRONT_PORT 変数を使用して設定できます。
FRONT_DOMAIN が設定されていない場合、フロントエンドURLは SERVER_URL に戻されます。
v0.32.0からv0.33.0
Twentyインスタンスをv0.33.0イメージにアップグレードします。yarn command:prod cache:flush コマンドはRedisキャッシュをフラッシュします。
yarn database:migrate:prod コマンドはデータベース構造(コアおよびメタデータスキーマ)の移行を適用します
yarn command:prod upgrade-0.33 はすべてのワークスペースのデータ移行を行います。
このバージョンから、DB用のtwenty-postgresイメージは廃止され、twenty-postgres-spiloが代わりに使用されるようになりました。
twenty-postgresイメージを使い続けたい場合は、docker-compose.yml内のtwentycrm/twenty-postgres:${TAG}をtwentycrm/twenty-postgresに置き換えるだけで済みます。
v0.31.0からv0.32.0
Twentyインスタンスをv0.32.0イメージにアップグレードします。 スキーマとデータ移行yarn database:migrate:prod コマンドはデータベース構造(コアおよびメタデータスキーマ)の移行を適用します
yarn command:prod upgrade-0.32 はすべてのワークスペースのデータ移行を行います。
環境変数
Redis接続の取り扱いを更新しました。
- 削除:
REDIS_HOST,REDIS_PORT,REDIS_USERNAME,REDIS_PASSWORD - 追加:
REDIS_URL
REDIS_URL 変数を使用するように .env ファイルを更新してください。
JWTトークンの取り扱いも簡素化しました。
- 削除:
ACCESS_TOKEN_SECRET,LOGIN_TOKEN_SECRET,REFRESH_TOKEN_SECRET,FILE_TOKEN_SECRET - 追加:
APP_SECRET
APP_SECRET 変数を使用するように .env ファイルを更新してください(以前と同じシークレットを使用するか、新しいランダム文字列を生成して使用することができます)
接続アカウント
Googleメールとカレンダーを同期するために接続されたアカウントを使用する場合は、Google管理コンソールでPeople APIをアクティブにする必要があります。
v0.30.0からv0.31.0
Twentyインスタンスをv0.31.0イメージにアップグレードします。 スキーマとデータ移行:yarn database:migrate:prod コマンドはデータベース構造(コアおよびメタデータスキーマ)の移行を適用します
yarn command:prod upgrade-0.31 はすべてのワークスペースのデータ移行を行います。
v0.24.0からv0.30.0
Twentyインスタンスをv0.30.0イメージにアップグレードします。 Breaking change: To enhance performances, Twenty now requires redis cache to be configured. これを反映したdocker-compose.ymlを更新しました。 構成を更新し、環境変数を適切に更新してください:yarn database:migrate:prod コマンドはデータベース構造(コアおよびメタデータスキーマ)の移行を適用します
yarn command:prod upgrade-0.30 はすべてのワークスペースのデータ移行を行います。
v0.23.0からv0.24.0
Twentyインスタンスをv0.24.0イメージにアップグレードします。 次のコマンドを実行します:yarn database:migrate:prod コマンドはデータベース構造(コアおよびメタデータスキーマ)の移行を適用します
yarn command:prod upgrade-0.24 はすべてのワークスペースのデータ移行を行います。
v0.22.0からv0.23.0
Twentyインスタンスをv0.23.0イメージにアップグレードします。 次のコマンドを実行します:yarn database:migrate:prod コマンドはデータベースへの移行を適用します。
yarn command:prod upgrade-0.23 は、アクティビティをタスク/ノートに移行するなど、データ移行を担当します。
v0.21.0からv0.22.0
Twentyインスタンスをv0.22.0イメージにアップグレードします。 次のコマンドを実行します:yarn database:migrate:prod コマンドはデータベースへの移行を適用します。
“yarn command:prod workspace:sync-metadata -f コマンドは、標準オブジェクトの定義をメタデータテーブルに同期し、既存のワークスペースに必要な移行を適用します。”
The yarn command:prod upgrade-0.22 command will apply specific data transformations to adapt to the new object defaultRequestInstrumentationOptions.