ドキュメント

サポート

Multiplay Hosting

Multiplay Hosting

コンテナビルドのワークフロー

Follow this workflow to create and deploy container-based builds using the API.
読み終わるまでの所要時間 2 分最終更新 4日前

コンテナビルド のワークフローには、コンテナの準備ビルドの取得 (または作成)ビルドファイルのリストの作成ビルドファイルの反復ビルドバージョンの作成、および ビルドの同期の待機 があります。 コンテナビルドのワークフローを使用する前に、CCD (連続的衝突判定) API キー と以下のロールを持つ UGS サービスアカウントが必要です。
  • Multiplay API ビューアー
  • マルチプレイヤー API エディター
  • Multiplay レジストリエディター
以下の図は、ワークフローの簡略化したバージョンを示しています。
コンテナのワークフローの図

コンテナのワークフローの図

ビルドコンテナの準備

  1. コンテナイメージをビルドします (帯域外プロセスを使用)。
  2. Unity プロジェクト ID と環境 ID をメモしておきます。
  3. Multiplay コンテナレジストリにログインします。
  4. ユーザー名にキー ID を使用し、パスワードに秘密鍵を使用します。認証 を参照してください。
docker login registry.multiplay.com -u <KeyID>

ビルドの取得または作成

ビルドを取得するプロセスは、既存のビルドを使用するか 新しいビルドを作成する かによって異なります。

名前による既存のビルドの取得

List Builds API を使用して、既存のビルド ID を名前で取得できます。 Build List API のレスポンス本体には、各ビルドの
ccd.bucketID
フィールドに各ビルドの CCD (連続的衝突判定) バケット ID、各ビルドの
buildID
フィールドにビルド ID が入っています。使用するビルドの
buildID
をメモしておいてください。
以下のコードサンプルは、curl を使用して既存のビルドを取得する方法を示しています。
curl -X GET -H "Authorization: Basic <SERVICE_ACCOUNT_CREDENTIALS>" https://services.api.unity.com/multiplay/builds/v1/projects/{projectId}/environments/{environmentId}/builds
使用するビルドを見つけたら、レスポンス本体の
buildID
をメモしておきます。

新しいビルドの作成

Create build API を使用して、新しいビルドを作成できます。 以下のコードサンプルは、curl を使用してビルドを作成する方法を示しています。
curl -X POST -H "Authorization: Basic <SERVICE_ACCOUNT_CREDENTIALS>" -H "Content-Type: application/json" \-d '{"buildName":"Dev Build A", "osFamily": "LINUX"}' \https://services.api.unity.com/multiplay/builds/v1/projects/{projectId}/environments/{environmentId}/builds
新しいビルドを作成したら、レスポンス本体の
buildID
をメモしておきます。

コンテナイメージへのタグ付け

新しいビルドに初めてプッシュするときは、
v1
MultiplayTag
として使用します。最初のプッシュ後は、増分タグ (例えば、
v2
など) を使用します。
以下のコードスニペットをコンテナのタグ付けのテンプレートとして使用します (
ImageName
ImageTag
は、ローカルイメージの名前とタグです)。
docker tag <ImageName>:<ImageTag> registry.multiplay.com/<ProjectID>/<EnvironmentID>/<BuildID>:<MultiplayTag>

コンテナレジストリへのイメージのプッシュ

コンテナにタグを付けた後、それを Multiplay コンテナレジストリにプッシュします。以下のコードスニペットをテンプレートとして使用します。
docker push registry.multiplay.com/<ProjectID>/<EnvironmentID>/<BuildID>:<MultiplayTag>

ビルドバージョンの作成

Create a new build version API を使用して、ビルドバージョンを作成できます。 以下のコードサンプルは、curl を使用してビルドバージョンを作成する方法を示しています。
curl -X POST -H "Authorization: Basic <SERVICE_ACCOUNT_CREDENTIALS>" -H "Content-Type: application/json" \-d '{"container": {"imageTag": "v1"}, "forceRollout": false}' \https://services.api.unity.com/multiplay/builds/v1/projects/{projectId}/environments/{environmentId}/builds/{buildId}/versions

ビルドの同期の待機

syncStatus
フィールドが
SYNCED
になるまで Get a single build API を再試行することで、ビルドの同期が完了したときにそれを確認できます。
以下のコードサンプルは、curl を使用してビルドが同期するまで待つ方法を示しています。
curl -X GET -H "Authorization: Basic <SERVICE_ACCOUNT_CREDENTIALS>" https://services.api.unity.com/multiplay/builds/v1/projects/{projectId}/environments/{environmentId}/builds/{buildId}