PVE 9 LXC 容器启动 Docker 步骤小结及避坑指南
(全程基于 PVE 9.0 + Debian 12 模板,新手可照搬,老手可速查)
一、先想清楚:为什么要在 LXC 里跑 Docker?
1. 省内存:同样 8 GB 主机,KVM 刚开机就吃掉 1 GB,LXC 只有 120 MB。 2. 快照快:PVE 的 LXC 快照秒级回滚,比 Docker volume 回退更暴力。 3. 家庭 All-in-One 友好:N100、N5105 小主机,8 W 功耗就能跑 10 个容器。
二、前置检查:PVE 9 已自动满足 90% 条件
三、创建 LXC 容器(关键 3 个勾选)
1. 模板:debian-12-standard_12.x-amd64.tar.zst(官方下载即可) 2. 取消「无特权容器」 → 必须特权,否则 /dev 与 cgroup 权限不够 3. 选项页一次性打勾:
☑ 嵌套(Nesting)
☑ FUSE(可选,后面挂载网盘更省心)
四、手动加 3 行配置(容器关机状态下)
SSH 到 PVE 节点,编辑/etc/pve/nodes/<你的节点>/lxc/
追加:
features: nesting=1,fuse=1lxc.apparmor.profile: unconfinedlxc.cgroup2.devices.allow: a
解释:
• nesting=1 → 允许容器里再建命名空间 • apparmor: unconfined → 放行 mount 系统调用 • devices.allow: a → 读写所有设备节点,dockerd 才不会报 “no permission”
五、启动容器并安装 Docker
apt update && apt upgrade -yapt install curl -ycurl -fsSL https://get.docker.com | shsystemctl enable --now dockerdocker run --rm hello-world # 验证
看到 “Hello from Docker!” 即成功。
六、常见报错与一键对照表
七、性能与资源占用实测
• 空闲 CT:内存 110 MB,CPU 0 % • 运行 5 个常用容器(nginx、redis、mysql、homeassistant、jellyfin):内存 1.1 GB,CPU <2 % • 同配置换 KVM:宿主机空闲内存少 800 MB,功耗高 3.4 W
八、适用场景与边界
✅ 适合:家庭 lab、开发测试、轻量微服务、快照频繁回滚
❌ 不适合:
• 生产数据库/支付系统(内核共享,隔离级别低) • 需 GPU 直通或加载第三方内核模块 • 等保/PCI-DSS 强合规环境
九、升级与维护小贴士
1. 备份:PVE 自带 vzdump,快照级备份 30 秒完成 2. 升级 Docker:用官方脚本 curl -fsSL https://get.docker.com | sh会自行识别并覆盖旧版3. 内核升级:PVE 9 默认滚动到 6.14,若需降级保留 6.2,可在 apt pin 内核包 4. 监控:lxcfs 会让容器内 free/top 显示真实值,PVE 9 已自动挂载,无需额外配置
十、一句话总结
PVE 9 让 LXC 跑 Docker 变得“有手就能行”:特权 + 嵌套 + 三行配置,省内存、快快照;但请把安全边界刻在心里——开发测试和家庭用真香,生产核心还是交给 KVM 或裸机更安心。
本文链接:https://www.kinber.cn/post/5724.html 转载需授权!
推荐本站淘宝优惠价购买喜欢的宝贝:

支付宝微信扫一扫,打赏作者吧~
