Docker
- 7. More Behind Docker
• 根據不同作業系統實作
• Linux
• Linux Namespaces - 系統環境隔離 Network、PID...
• Linux Cgroup - 系統資源管理 CPU、RAM…
• Windows
• Hyper-V
• 骨子裡還是用Linux Kernal給的功能
- 9. More About Docker
• bridge - 預設值,網路橋接(流量轉發)
• host - 不隔離container的網路,直接接在主機上
• macvlan - 分配mac給container,模擬物理裝置
• overlay - 可以讓不同主機之間的container連線
• none - 關閉container的網路功能
overlay network reference:
https://ithelp.ithome.com.tw/articles/10193708
Network
- 10. More About Docker
• 允許container的資料被長期保存
• 避免container刪除後資料全部消失
• 可應用在建立程式執行環境上
實作方式
1. 把主機路徑上的硬碟掛到container上
2. 在Docker的管理下建立Volume,再丟給container使用
Volume
- 12. Difference Between VM And Container
• VM
• 需要完整的作業系統
• 所需空間大
• 完全隔離系統資源
• Container
• 不需要完整的作業系統
• 所需空間小
• 底層還是在作業系統上跑
- 14. Docker Registry
• 用來存放Docker image
• 可以從雲端上面下載需要的image用
Docker Hub
• 官方提供的Docker Registry
• 可以下載多數人發布的image
• 找不到image的話Docker預設來這邊載
• 有很多官方image可以用
- 18. Let Docker more easy
Docker VS Code Extension
• 用圖形化介面和Docker互動
• 快速檢視主機的Docker活動
• 可以直接瀏覽和下載Container檔案
• 可以用連線進入主機上的Container
• 直接用VS Code在Container內改程式