全部產品
Search
文件中心

Container Registry:觸發器管理

更新時間:Sep 25, 2024

若您想實現自動化的持續整合功能,您可以使用阿里雲鏡像服務觸發器,在成功構建新的鏡像後,將會自動觸發Container Service上應用拉取新的鏡像,並進行重新部署。

觸發器安全規則

  • HTTP服務:預設使用80連接埠。

    如果要使用其他連接埠,請在觸發器URL末尾手動添加連接埠號碼,而且只能選擇以下連接埠號碼:80、21、443、70、210、280、488、591、777、1025~65535。

  • HTTPS服務:預設使用443連接埠。

    只支援預設的443連接埠,如果要使用其他連接埠號碼,請使用HTTP服務。只支援使用標準認證,不支援使用自簽認證。

觸發條件

Container RegistryACR提供了兩種不同的方式來設定觸發器的觸發條件:運算式觸發和Tag觸發。之前未設定觸發條件的觸發器會預設為全部觸發類型。

  • 運算式觸發:基於Regex來進行Tag的過濾,只有當符合Regex的Tag才會繼續觸發觸發器。

    可以填寫簡單的Regex,如release-v.*,則只有Tag為release-v開頭的鏡像版本在構建後,才會觸發後續持續整合的流程;否則為未觸發狀態,訪問記錄中訪問狀態代碼將顯示“未觸發”。

    單擊訪問記錄,可以查看觸發器的歷史訪問詳情。

  • Tag觸發:基於使用者篩選的Tag列表來進行觸發。

    可以在列表中篩選需要觸發的Tag,最多可選10個,則只有當Tag在列表中時,才會在鏡像構建後觸發觸發器;否則為未觸發狀態,訪問記錄中訪問狀態代碼將顯示“未觸發”。

    單擊訪問記錄,可以查看觸發器的歷史訪問詳情。

通知內容

觸發器的通知內容包含了鏡像倉庫的資訊,以及鏡像的版本資訊,如下所示。其中,鏡像倉庫資訊包括了倉庫的Namespace、Name以及倉庫對應的Region等。

POST /payload HTTP/1.1

Content-Type: application/json
Request URL: https://cs.console.alibabacloud.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"
    }
}