講到容器,多數人直接想到 Docker。但在 Proxmox VE 上,你按「建立 CT」跑起來的其實是 LXC。這兩個常被混為一談,實際上解決的問題不同。
核心差異:一個管系統,一個管服務
- LXC(系統容器):共用 host kernel,但容器內是完整的使用者空間,有 init、有 systemd、有自己的網路與服務管理。
- Docker(應用容器):一個 process 一個容器,靠 image 分層與 registry 管理版本,設計上假設「服務是無狀態、可隨時重建」。
我的判斷標準
需要「一個完整環境」——服務、資料庫、排程、log 都在裡面,而且要像一台小機器一樣維護 → 用 LXC。
需要「一個服務、能整包搬走、版本可控」——無狀態 API、一次性任務 → 用 Docker。
常用指令
pct list:列出容器與狀態pct enter <CTID>:進入容器 consolepct config <CTID>:看容器設定(資源、網路、掛載)pct snapshot <CTID> <name>:快照,改設定前先拍一張
常見誤區
LXC 不是「比較弱的虛擬機」——它共用 kernel,所以不能跑不同 kernel 版本、也不能做到完全隔離;但也因此開機快、資源損耗低。反過來,Docker 也不是「比較新的 LXC」,它犧牲了系統完整性換取部署一致性。
從原理到實戰流程的完整版:LXC 容器技術全解析:從核心原理到實戰操作指南
沒有留言: