本文檔是通過流水線Flow,實現從代碼托管倉庫到構建鏡像并推送到ACR鏡像倉庫,執行的自動化流水線任務,使用以下示例演示操作步驟。
前提條件
步驟一:新建流水線
登錄流水線Flow服務控制臺,在控制臺界面,請單擊右側上方新建流水線按鈕。
在彈出窗口頁面,根據需求選擇合適的流水線模板,選擇好流水線模板后,單擊創建按鈕。
步驟二:配置流水線任務-代碼源
在完成步驟一新建流水線后,將會自動跳轉到流水線任務節點的操作頁面。
在流水線源任務節點,單擊任務節點按鈕添加流水線源,右側滑出頁面,單擊菜單代碼源,選擇示例代碼源,在下方代碼類型配置項里,單擊JAVA語言,最后單擊添加按鈕,完成代碼源流水線任務配置。
說明在添加流水線源,選擇代碼源時候,提供了多種代碼源的托管倉庫平臺,如:自建Gitlab、Codeup、Github等,可以根據您的需求選擇。
重要構建鏡像Dockerfile指令文件,是用于構建Docker鏡像的指令文件,有關更多內容請參閱在Dockerfile中使用構建打包鏡像并運行。
本文使用示例代碼源,在示例代碼倉庫根目錄下有構建鏡像的Dockerfile指令文件。
如果您選擇的非示例代碼源,請確保您的代碼倉庫已創建配置了構建鏡像的Dockerfile指令文件。
步驟三:配置流水線任務-構建鏡像并推送到ACR
完成步驟二配置流水線源任務后,單擊任務節點或新建任務節點,右側滑出編輯頁面,單擊導航菜單鏡像構建,單擊添加阿里云鏡像構建企業版任務。
說明建議選擇使用鏡像構建并推送至阿里云鏡像倉庫企業版,企業版支持多地域,提供穩定快速的鏡像上傳、下載服務。
鏡像構建并推送至阿里云鏡像倉庫個人版,是面向個人開發者,功能受限較多,不保障SLA(鏡像網絡加速性能),具體詳情請參閱什么是容器鏡像服務ACR。
單擊新添加的任務鏡像構建并推送至阿里云鏡像倉庫企業版,在編輯頁面配置參數。
參數
說明
任務名稱
自定義任務名稱。
構建集群
根據需求選擇合適的默認公共或者私有構建集群。
構建環境
根據需求選擇合適的構建環境。
說明任務執行期間,流水線任務構建環境分配給用戶使用,構建環境使用權限歸屬用戶,任務執行腳本由用戶自定義。
下載流水線源
根據需求選擇下載流水線源的不同方式。
以下提供了企業版和個人版的任務配置參數,根據您的需求選擇,完成任務參數設置。
企業版
企業版配置參數設置。
步驟名稱:您可以自定義步驟名稱,本文保持默認名稱。
選擇服務鏈接:單擊右側添加服務鏈接按鈕,在彈出窗口頁,選擇您的ACR服務鏈接信息,在設置服務授權/證書時候,如果沒有ACR資源授權訪問權限,請單擊右側新建按鈕,進行同意授權,最后單擊創建按鈕,完成選擇服務鏈接。
地域:根據容器鏡像服務ACR目標實例的區域,選擇相同的區域。
企業實例:選擇容器鏡像服務ACR企業版目標實例。
命名空間:選擇目標ACR鏡像倉庫所屬的命名空間。
倉庫:選擇目標ACR鏡像倉庫。
標簽:設置動態參數${DATETIME},表示鏡像被推送到ACR后,將會以當前日期時間作為版本名稱。
說明標簽:支持固定參數例如1.0,或者動態參數例如${DATETIME}。
Dockerfile路徑:本文示例代碼源倉庫中Dockerfile文件是在根目錄下,保持默認路徑即可。
說明如果非本文示例代碼源,請正確設置您的Dockerfile路徑地址。
Dockerfile路徑,默認路徑是相對于代碼庫根目錄所在路徑,如META/config/Dockerfile或Dockerfile。
完成參數設置后,單擊右上方X關閉按鈕。
重要由于Flow需要將構建的鏡像推送到ACR倉庫,需要ACR企業版目標實例開啟鏡像倉庫公網進行通信,請設置ACR訪問控制公網是開啟狀態,再將Flow構建集群公網出口地址,添加到ACR公網白名單里。
查看Flow構建集群公網出口地址,在流水線Flow控制臺界面導航菜單最下方,單擊菜單全局設置,在全局設置頁面導航菜單里單擊構建集群管理,在構建集群管理頁面,本文使用的云效默認構建集群下的云效北京構建集群,根據需求選擇地區集群,將查看的公網出口地址添加到ACR訪問控制白名單里。
如果您使用私有構建集群,Flow是通過VPC地址推送ACR鏡像倉庫的,需要在任務編輯頁面的任務步驟配置項里單擊勾選私有構建集群使用VPC地址推送鏡像,就無需開啟ACR公網。添加私有構建集群,具體操作請參閱構建集群。
個人版
個人版配置參數設置。
步驟名稱:您可以自定義步驟名稱,本文保持默認名稱。
選擇服務鏈接:與企業版服務鏈接設置相同。
地域:根據容器鏡像服務ACR目標實例的區域,選擇相同的區域。
倉庫:選擇目標ACR鏡像倉庫。
Dockerfile路徑:本文示例代碼源倉庫中Dockerfile文件是在根目錄下,保持默認路徑即可。
完成參數設置后,單擊右上方X關閉按鈕。
步驟四:運行并查看目標流水線任務
在流水線Flow控制臺界面我的流水線列表,單擊目標流水線右側運行按鈕,再單擊目標流水線名稱,查看流水線任務節點界面。
運行流水線任務完成后,在構建鏡像任務節點,右下方單擊日志,在彈出窗口頁,可以查看到流水線任務的執行過程結果日志,還可以在ACR實例鏡像倉庫里查看推送的鏡像版本,運行流水線任務和查看日志操作完成。