知識冒險者

Home

❯

Atlas

❯

Maps

❯

Docker MOC

Docker MOC

Properties1
tagsmoc

2026年8月25日閱讀時間約 2 分鐘

Docker MOC

用途:串連 Docker 從底層原理到實務的筆記。 上層:開發環境與工具 MOC

底層原理

  • Kernel:作業系統核心 — 前置概念:user space / system call / kernel space 三層
  • 容器是被 namespace 與 cgroups 關起來的普通行程
  • VM 與容器的差別在有沒有自己的 kernel
  • Docker 是 client-server 架構,CLI 只是遙控器

Image 與 Container

  • Image
  • Container
  • Image 完整名字是 Registry-Namespace-Repository-Tag
  • 正式環境不要用 latest tag

Dockerfile 與建置

  • Dockerfile 分層快取由上往下連鎖失效
  • 多階段建置把建置工具擋在最終 image 之外
  • CMD 與 ENTRYPOINT 的差別與 exec form 的 SIGTERM 陷阱

執行、網路與資料

  • 連不上容器的四個原因與 -p 的方向
  • 容器之間要用容器名稱連線而不是 localhost
  • 容器可拋棄,資料要靠 Volume 留在容器外
  • bind mount 掛原始碼會蓋掉 image 裡的 node_modules
  • Docker Compose 一個檔案起整套環境

除錯與實務

  • 容器除錯四寶與 exit code 對照
  • 容器設計原則:單一職責、無狀態、設定走環境變數
  • Image 是 CI-CD 流水線上唯一的交付物


關係圖譜

  • Docker MOC
  • 底層原理
  • Image 與 Container
  • Dockerfile 與建置
  • 執行、網路與資料
  • 除錯與實務

反向連結

  • Git 與 CI-CD MOC
  • 開發環境與工具 MOC

Created with Quartz v5.0.0 © 2026