容器的最佳做法

本頁提供建構及執行容器映像檔的最佳做法。

建構容器

建構容器映像檔的方法會影響建構和部署速度,以及維護映像檔所需的工作量。

請參閱 Docker 最佳做法,瞭解如何建構映像檔。

公開登錄資料庫的注意事項

請仔細考慮下列情況:

使用公開來源的圖片

使用 Docker Hub 等公開來源的映像檔時,您會將貴機構無法控管的程式碼導入軟體供應鏈。如要降低風險,請採取下列行動:

  • 建構自己的圖片,控管圖片內容。
  • 使用標準化基本映像檔,並以該映像檔為基礎建構。
  • 掃描映像檔是否有安全漏洞,並解決發現的安全漏洞。
  • 對部署的映像檔強制執行標準和政策。
將登記資料設為公開

如要公開 Google Cloud 專案中的登錄檔,請將登錄檔儲存空間值區的讀取權授予 allUsers 身分。

如果所有使用者都有 Google Cloud 帳戶,您可以改用 allAuthenticatedUsers 身分限制存取權,只允許已驗證的使用者存取。

將登記資料設為公開前,請先參考下列指南:

  • 確認您儲存在登錄檔中的所有圖片均可公開分享,且不會洩漏憑證、個人資料或機密資料。
  • 使用者提取映像檔時,您需要支付網路輸出費用。 如果預期會有大量網際網路下載流量,請考慮相關費用。
  • 根據預設,專案的每位使用者配額沒有上限。 為防範濫用行為,請在專案中設定每位使用者的配額上限。

移除未使用的圖片

移除未使用的容器映像檔,以降低儲存空間費用,並減少使用舊版軟體的風險。我們提供多種工具協助您完成這項工作,包括 gcr-cleaner。gcr-cleaner 工具並非 Google 官方產品。

評估容器安全性

網際網路安全中心 (CIS) 提供 Docker 基準,可評估 Docker 容器的安全性。

Docker 提供名為「Docker Bench for Security」的開放原始碼指令碼。您可以使用這個指令碼,根據 CIS Docker 基準驗證正在執行的 Docker 容器。

Docker Bench For Security 可協助您驗證 CIS Docker 基準中的許多項目,但並非所有項目都能透過指令碼驗證。舉例來說,指令碼無法驗證容器的主機是否經過強化,也無法驗證容器映像檔是否包含個人資料。查看基準中的所有項目,找出可能需要額外驗證的項目。

保護部署作業

瞭解如何建構安全的軟體供應鏈,以及如何在 Google Cloud 上使用安全漏洞掃描和二進位授權,定義及強制執行部署政策。

您也可以觀看影片,瞭解如何保護軟體供應鏈。