部署代理程式本節說明部署 Artifactory 代理程式的步驟。
在部署代理程式之前,請確保您符合先決條件
- 您託管代理程式的伺服器可以透過網路存取下列資源:
- 您的 JFrog Artifactory 執行個體
hub.docker.com
,埠 443,用於向 Docker 進行驗證api.dso.docker.com
,埠 443,用於將資料傳輸至 Docker Scout
- 登錄檔是 Docker V2 登錄檔。不支援 V1 登錄檔。
代理程式支援所有版本的 JFrog Artifactory 和 JFrog Container Registry。
您可以使用 JSON 檔案設定代理程式。代理程式預期設定檔在啟動時位於 /opt/artifactory-agent/data/config.json
。
設定檔包含下列屬性:
屬性 | 說明 |
---|
agent_id | 代理程式的唯一識別碼。 |
docker.organization_name | Docker 組織的名稱。 |
docker.username | Docker 組織中管理員使用者的使用者名稱。 |
docker.pat | 具有讀取和寫入權限的管理員使用者的個人存取權杖。 |
artifactory.base_url | Artifactory 執行個體的基底 URL。 |
artifactory.username | 代理程式將使用的具有讀取權限的 Artifactory 使用者的使用者名稱。 |
artifactory.password | Artifactory 使用者的密碼或 API 權杖。 |
artifactory.image_filters | 選用:要分析的儲存庫和映像檔清單。 |
如果您未在 artifactory.image_filters
中指定任何儲存庫,代理程式將對 Artifactory 執行個體中的所有映像檔執行映像檔分析。
以下程式碼片段顯示範例設定
建立設定檔並將其儲存在您計畫執行代理程式的伺服器上的某個位置。例如,/var/opt/artifactory-agent/config.json
。
以下範例顯示如何使用 docker run
執行 Docker Scout Artifactory 代理程式。此命令會為容器內先前在 /opt/artifactory-agent/data
建立的包含 JSON 設定檔的目錄建立繫結掛載。請確保您使用的掛載路徑是包含 config.json
檔案的目錄。
重要
使用 Artifactory 代理程式映像檔的 v1
標籤。請勿使用 latest
標籤,因為這樣做可能會導致重大變更。
預設情況下,代理程式會在建立和更新映像檔時偵測和分析映像檔。如果您想使用代理程式分析先前存在的映像檔,可以使用回填模式。使用 --backfill-from=TIME
命令列選項(其中 TIME
是 ISO 8601 格式的時間)以回填模式執行代理程式。如果您使用此選項,代理程式會分析在該時間與代理程式啟動時的目前時間之間推送的所有映像檔,然後結束。
例如:
多次執行回填時,代理程式不會分析已分析的映像檔。若要強制重新分析,請提供 --force
命令列旗標。
您可以在 Docker Scout 儀表板中檢視映像檔分析結果。
前往 Docker Scout 儀表板中的映像檔頁面。
此頁面會顯示您組織中啟用 Docker Scout 的儲存庫。
從清單中選取映像檔。
選取標籤。
選取標籤後,您將會進入該標籤的弱點報告。在此,您可以選擇要檢視映像檔中的所有弱點,還是特定層中引入的弱點。您也可以根據嚴重性以及是否有可用的修復版本來篩選弱點。