Container Registry は EventBridge と統合されており、イメージ関連のイベントが発生した際に通知を送信します。イベントルールを設定することで、イメージの同期、イメージのビルド、イメージのスキャン、デリバリーチェーンの実行、またはイメージの署名が完了した際に、DingTalk、HTTP、または HTTPS 経由でアラートを受信できます。
前提条件
開始する前に、以下が満たされていることを確認します。
-
Container Registry Enterprise Edition インスタンス。詳細については、「Container Registry Enterprise Edition インスタンスの作成」をご参照ください。
-
EventBridge が有効化されていること。詳細については、「EventBridge の有効化と RAM ユーザーへの権限付与」をご参照ください。
制限事項
-
イベント通知機能は、中国東部 1 Finance、中国東部 2 Finance、中国南部 1 Finance、中国北部 2 Ali Gov 1、およびイギリス (ロンドン) リージョンでは利用できません。
-
各リージョンでは、Container Registry と EventBridge でそれぞれ個別にカウントされ、最大 10 個のイベントルールがサポートされます。上限に達した場合は、新しいルールを作成する前に、使用していないルールを削除してください。
-
DingTalk チャットボットには、毎分 20 メッセージのレート制限があります。通知がこの制限を超えると、チャットボットは 10 分間スロットリングされます。
-
イベントトレースは、イベント発生後 3 日以内のみイベント ID でクエリできます。
サポートされるイベントタイプ
| イベントタイプ | トリガー条件 |
|---|---|
cr:Artifact:SynchronizationCompleted |
イメージの同期が成功、失敗、またはキャンセルされた場合 |
cr:Artifact:BuildCompleted |
イメージのビルドが成功、失敗、またはキャンセルされた場合 |
cr:Artifact:ScanCompleted |
イメージのスキャンが成功または失敗した場合 |
cr:Artifact:DeliveryChainCompleted |
デリバリーチェーンの処理が成功、失敗、キャンセル、または拒否された場合 |
cr:Artifact:SigningCompleted |
イメージの署名が成功または失敗した場合 |
ステップ 1:DingTalk チャットボットの作成
HTTP または HTTPS 通知を使用する場合は、このステップをスキップしてください。
-
通知を受信する DingTalk グループチャットを開き、右上隅の
アイコンをクリックします。 -
[グループ設定] パネルで、[グループアシスタント] をクリックします。
-
[グループアシスタント] ダイアログボックスで、[ロボットを追加] をクリックし、次に [ロボットを追加] の横にある
アイコンをクリックします。 -
[チャットボット] ダイアログボックスで、[カスタム] をクリックします。
-
[ロボットの詳細] ダイアログボックスで、[追加] をクリックします。
-
[ロボットを追加] パネルで、チャットボット名を入力し、[署名] と [「DingTalk カスタムロボットサービス利用規約」を読み、同意します] を選択し、[完了] をクリックします。再度 [完了] をクリックします。
-
[チャットボット] ダイアログボックスで、作成したチャットボットの横にある
アイコンをクリックします。 -
[設定] ダイアログボックスで、Webhook アドレスと署名キーをコピーし、[完了] をクリックします。
ステップ 2:イベントルールの作成
-
Container Registry コンソールにログインします。
-
上部のナビゲーションバーで、リージョンを選択します。
-
左側のナビゲーションウィンドウで、[インスタンス] をクリックします。
-
[インスタンス] ページで、管理する Enterprise Edition インスタンスをクリックします。
-
インスタンス詳細ページの左側のナビゲーションウィンドウで、[インスタンス] > [イベント通知] を選択します。
-
[イベントルール] タブで、[ルールの作成] をクリックします。
-
[イベント範囲] ステップで、次のパラメーターを設定し、[次へ] をクリックします。
パラメーター 説明 ルール名 イベントルールの名前。 イベントタイプ 通知をトリガーするイベント。サポートされるイベントタイプから 1 つ選択します。イメージのスキャンイベントの場合は、 cr:Artifact:ScanCompletedを選択し、次に [スキャン済み] を選択します。有効範囲 ルールが適用される範囲:[インスタンス](インスタンス内の正規表現に一致するすべてのイメージタグ)、名前空間(選択した名前空間内で正規表現に一致するイメージタグ)、またはリポジトリ(選択した名前空間およびリポジトリ内で正規表現に一致するイメージタグ)。 -
[イベント通知] ステップで、通知タイプを選択し、[保存] をクリックします。保存後、デフォルトの EventBridge イベントバスに、デフォルトの DingTalk 通知テンプレートを使用して、同じ名前のイベントルールが自動的に作成されます。イメージのスキャンが成功すると、DingTalk グループは次のような通知を受信します。
-
DingTalk:ステップ 1 で取得した Webhook アドレスと署名キーを入力します。
-
HTTP:HTTP エンドポイント URL を入力します。
-
HTTPS:HTTPS エンドポイント URL を入力します。

-
EventBridge でイベントルールを変更した後に Container Registry で同じルールを変更すると、Container Registry の構成が EventBridge の構成を上書きします。例えば、EventBridge で通知テンプレートを更新した後に Container Registry で有効範囲を更新すると、Container Registry のデフォルトテンプレートが EventBridge でのカスタマイズを上書きします。
イベントトレースの表示
イベント配信のトラブルシューティングを行うには、EventBridge でイベントトレースを表示します。
-
Container Registry コンソールにログインします。
-
上部のナビゲーションバーで、リージョンを選択します。
-
左側のナビゲーションウィンドウで、[インスタンス] をクリックします。
-
[インスタンス] ページで、管理する Enterprise Edition インスタンスをクリックします。
-
インスタンス詳細ページの左側のナビゲーションウィンドウで、[インスタンス] > [イベント通知] を選択します。
-
[イベント通知] ページで、[イベント履歴] タブをクリックし、調査したいイベントの [操作] 列にある [詳細の表示] をクリックします。
-
EventBridge コンソールの [イベント ID でクエリ] タブで、[操作] 列の [イベントトレース] をクリックします。[イベントトレース] ダイアログボックスには、イベントの受信と配信に関する詳細が表示されます。
イベントトレースは、イベント発生後 3 日以内のみイベント ID でクエリできます。
次のステップ
通知タイプなどのイベントルールの設定を更新するには、EventBridge でイベントルールを直接変更します。詳細については、「イベントターゲットの変更」をご参照ください。