すべてのプロダクト
Search
ドキュメントセンター

Container Registry:トリガーの管理

最終更新日:Jun 27, 2024

自動継続統合機能を実装する場合は、Container Registryトリガーを使用できます。 イメージが作成されると、コンテナーサービスのアプリケーションが自動的にトリガーされ、新しいイメージがプルされて再デプロイされます。

トリガーの使用に関するセキュリティルール

  • HTTPサービス: デフォルトではポート80が使用されます。

    他のポートを使用する場合は、トリガーURLの末尾にポート番号を追加します。 使用できるポート番号は、80、21、443、70、210、280、488、591、777、および1025から65535までです。

  • HTTPSサービス: デフォルトではポート443が使用されます。

    ポート443のみがサポートされています。 他のポートを使用する場合は、HTTPサービスを使用します。 HTTPSサービスは標準証明書のみをサポートし、自己署名証明書はサポートしません。

トリガーメソッド

Container Registryには、式ベースのトリガーとタグベースのトリガーの2つのトリガー方法があります。 トリガーメソッドが指定されていない場合、新しいイメージタグが生成されるか、イメージタグが更新されるたびに、イメージプルがトリガーされます。

  • 式ベースのトリガー: タグは正規表現に基づいてフィルタリングされます。 イメージのプルは、タグが正規表現と一致する場合にのみトリガーされます。

    単純な正規表現を入力できます。 たとえば、release-v.* と入力した場合、release-vで始まるタグを持つイメージが作成された後にのみ、イメージプルがトリガーされます。 それ以外の場合、イメージプルはトリガーされず、アクセスログのアクセスステータスコードは「トリガーされません」です。

    [アクセスログ] をクリックして、トリガーのアクセス履歴を表示します。

  • タグベースのトリガー: 指定されたタグに基づいてイメージプルがトリガーされます。

    イメージのプルをトリガーする必要があるタグに基づいて、最大10個のタグを指定できます。 次に、指定されたタグを持つイメージが作成された場合にのみ、イメージプルがトリガーされます。 それ以外の場合、イメージプルはトリガーされず、アクセスログのアクセスステータスコードは「トリガーされません」です。

    [アクセスログ] をクリックして、トリガーのアクセス履歴を表示します。

通知内容

トリガーの通知内容には、次のコードに示すように、リポジトリとイメージタグに関する情報が含まれます。 リポジトリ情報には、リポジトリの名前空間、名前、およびリージョンが含まれます。

POST /payload HTTP/1.1

Content-Type: application/json
Request URL: https://cs.console.aliyun.com/hook/trigger?triggerUrl=YzRmMWE5YzM2ZjMzYzQ0NmFiMGYzNWJlMmM2MjM2NzIyfGV4cHJlc3N8cmVkZXBsb3l8MThlMmllY2drdXYyZXw=&secret=365a4a664b45615438716a487a75695a7ac48329224b35b073c2197374e7d62a
Request method: POST

{
    "push_data": {
        "digest": "sha256:457f4aa83fc9a6663ab9d1b0a6e2dce25a12a943ed5bf2c1747c58d48bbb4917", 
        "pushed_at": "2016-11-29 12:25:46", 
        "tag": "latest"
    }, 
    "repository": {
        "date_created": "2016-10-28 21:31:42", 
        "name": "repoTest", 
        "namespace": "namespace", 
        "region": "cn-hangzhou", 
        "repo_authentication_type": "NO_CERTIFIED", 
        "repo_full_name": "namespace/repoTest", 
        "repo_origin_type": "NO_CERTIFIED", 
        "repo_type": "PUBLIC"
    }
}