DevOps
打造可上線的容器映像
小型、可重現、非 root 的容器映像,能正確啟動並通過漏洞與執行期檢查。
流程
照這個順序做。
- 確認應用建置、執行期檔案、埠、健康行為、設定邊界與支援的目標架構。
- 撰寫多階段 Dockerfile,使用可信且版本釘選的基底,以及排除來源雜訊、憑證與本機成品的 .dockerignore。
- 可重現地安裝依賴、為快取效率排序層,並只把必要執行期成品複製到最終階段。
- 建立並切換到非特權使用者、設定明確進入點,並把設定與密鑰留在映像外。
- 啟用 Docker 檢查建置、檢視映像歷史與大小、掃描弱點,並驗證預期中繼資料與架構。
- 用接近正式的唯讀或受限設定執行映像,測試啟動、健康、關閉、網路行為與代表性請求。
先準備
貓會向你要的輸入。
- 應用原始碼與建置指令
- 執行期與架構目標
- 埠、健康與設定契約
- 核准的基底映像政策
路由器 + 一份 playbook
先路由。只選一份。
Cat Paw 每次任務只載入一份 playbook,不合併多份。先走這個路由器;其餘路徑是此 workflow 可檢查的候選。
- 路由器:
engineering-pack skills/engineering/addyosmani/security-and-hardening/SKILL.mdskills/engineering/addyosmani/ci-cd-and-automation/SKILL.mdskills/engineering/addyosmani/shipping-and-launch/SKILL.md
界線
界線跟著提示一起走。
- 絕不把憑證、私鑰或環境特定密鑰烤進映像層。
- 除非有書面需求與補償控制,否則不要以最高權限帳號執行。
- 未掃描且未從乾淨建置演練的映像不要發布。
完成代表
一個可核對的終點。
乾淨建置產出預期映像、無密鑰、行程以預定的非最高權限使用者執行、健康與關閉檢查通過,掃描發現符合既定政策。
來源
這個流程從哪來。
來源確立 workflow 的模式。若有 Reddit 或社群貼文,視為實務軼事,不是普遍事實。