プライベートイメージレジストリを連携すると、Containerテンプレートでカスタムイメージをデプロイすることができます。本ガイドではGitHub Container Registry、GCP Artifact Registry、Docker Hubとの連携について説明します。
レジストリの連携
GitHub Container Registry
GitHub Container Registry
Personal Access Tokenの生成

GitHubアカウントのSettingsにアクセスし、Developer settings > Personal access tokens (classic) ページからGenerate new token > Generate new token(classic)
をクリックしてトークンを生成してください。
権限の付与とトークンの発行

以下の権限を付与し、Generate token
をクリックしてください。
- repo
- write:packages
- admin:public_key

トークンの生成が完了すると、トークン値が表示されます。トークンは生成時に一度だけ値を確認することができます。
エールへの連携

スペース設定画面のアドオンページからコンテナレジストリを連携する
をクリックすると表示されるコンテナレジストリ設定モーダルで、以下の値を入力し連携する
をクリックすると**GitHub Container Registryが連携されます。
- レジストリプロバイダー : GitHub Container Registry
- GitHubアカウント : GitHub ID
- パーソナルアクセストークン(PAT) : GitHubで生成したPersonal Access Token
GCP Artifact Registry
GCP Artifact Registry
GCP Artifact Registryの作成

Google Cloud コンソールでArtifact Registryサービスにアクセスし、リポジトリを作成
をクリックしてください。

リポジトリの名前を適切に設定し、以下の値を入力して作成
をクリックするとリポジトリが作成されます。
- フォーマット : Docker
- モード : 標準
- ロケーションタイプ : リージョン
- リージョン : ユーザーの状況に応じたリージョンを選択
- 暗号化 : Google管理の暗号化キー
レジストリの接続アドレスの確認

作成したリポジトリをクリックすると、[リージョン]-docker.pkg.dev/[GCPプロジェクトID]/[リポジトリ名]
形式の接続アドレスを確認できます。
レジストリの接続アドレスは、エールでレジストリを連携する際に使用されます。
サービスアカウントの作成と権限付与

Google CloudコンソールのIAMと管理 > サービスアカウントページで、サービスアカウントを作成
をクリックしてください。

識別可能なサービスアカウント名を入力し、作成して続行
をクリックします。

ロール選択モーダルでArtifact Registry管理者を選択し、完了
をクリックするとサービスアカウントが作成されます。
JSONキーの作成

作成されたサービスアカウントの右側にあるアイコンをクリックし、キーの管理を選択してください。

作成したサービスアカウントのキー管理ページのキーを追加 > 新しいキーを作成をクリックすると表示される新しい秘密鍵の作成モーダルで、キータイプとしてJSONを選択し、作成
をクリックするとJSONキーがファイル形式でダウンロードされます。
エールへの連携

スペース設定画面のアドオンページからコンテナレジストリを連携する
をクリックすると表示されるコンテナレジストリ設定モーダルで、以下の値を入力し連携する
をクリックするとGoogle Cloud Artifact Registryが連携されます。
- レジストリプロバイダー : Google Cloud Artifact Registry
- 接続アドレス : リポジトリ作成後に確認した接続アドレス
- キーファイル(JSON) : JSONキーファイルの内容
Docker Hub
Docker Hub
Docker Hub Access Tokenの生成

Docker Hubアカウントを作成後、右上のアカウント名をクリックします。
続いてAccount Settings > Securityにアクセスし、New Access Token
をクリックします。
権限の付与とトークンの発行

Access Token Descriptionフィールドにトークンの用途や役割を区別できる文言を入力し、Access permissionsはRead & Writeを選択してください。 生成されたトークンは最初の1回のみ確認可能です。
エールへの連携

スペース設定画面のアドオンページからコンテナレジストリを連携する
をクリックすると表示されるコンテナレジストリ設定モーダルで、以下の値を入力し連携する
をクリックするとDocker Hubが連携されます。
- レジストリプロバイダー : Docker Hub
- ユーザー名 : Docker Hub ID
- パスワード(トークン) : Docker Hub Access token
イメージのデプロイ

ダッシュボードの または ⌘ + K
で表示されるデプロイモーダルで、Containerテンプレートを選択し、必要な設定値を入力してデプロイできます。
コンテナイメージアドレスとタグ
コンテナイメージアドレスとタグ

接続したレジストリにあるイメージのイメージURLとタグを入力してください。
ポート番号、環境変数、Start Command
ポート番号、環境変数、Start Command
イメージデプロイに必要な設定値を入力してください。
詳細オプション
詳細オプション

- uid : コンテナでプロセスを実行するユーザーの固有識別子(デフォルト値1000)
- gid : コンテナでプロセスが属するグループの固有識別子(デフォルト値1000)
-
Update strategy
- Rolling Update : 新バージョンデプロイ後、既存ポッド終了。可用リソース確保必要
- Recreate : 既存ポッドを終了後、新バージョンを作成・起動。ダウンタイム発生
- Shell : コンテナ実行後に実行するシェル(sh、bash、zshなど)
リソース設定とデプロイ
リソース設定とデプロイ

- リソースタイプ:オンデマンドとスポットリソースから選択
- CPU:サービスで利用可能なvCPUの上限を設定。最小構成時は0.1 vCPUを割り当て
- メモリ:サービスで利用可能なメモリの上限を設定
- レプリカ:設定した数に応じサービスを水平スケーリングし、負荷分散と可用性確保
-
デプロイ:
デプロイ
をクリック
リソース制限によりデプロイできない場合は、スペースとリソースの管理ページを参照してスペースにリソースを追加してください。