外观
LXC 常用服务
容器最划算的场景是长期运行的轻量服务:一个反向代理容器可能只占几十 MB 内存,换成虚拟机至少要 1 GB。
适合放进容器的
- 反向代理(Nginx、Caddy)
- 内网 DNS
- 数据库(小规模内网服务用)
- 监控采集器
- 备份代理
- 各种小工具和脚本宿主
不适合的
- 需要 PCI 直通的(容器做不到)
- 需要加载内核模块的
- 需要自己内核版本的
- 会接受不可信输入、且你打算用特权容器跑的(那就用虚拟机)
默认用非特权容器
创建时保持 Unprivileged container 勾选。遇到挂载点权限问题时,正确的方向是处理 UID 映射,不是改用特权容器。
公式:宿主机 UID = 100000 + 容器内 UID。详见特权与非特权容器。
本分类文章
- 反向代理容器:用 Caddy 给内网服务配域名和自动 HTTPS,认清对外暴露的风险。
- Tailscale 容器:非特权容器里跑 Tailscale,映射
/dev/net/tun,做成子网路由器或出口节点。
Docker 呢
在 LXC 里跑 Docker 技术上可行(需要开 Nesting),但要处理嵌套容器的存储驱动、cgroup 和 AppArmor 问题。
推荐用一台虚拟机跑 Docker——多花 1–2 GB 内存,换来「所有网上的教程都能直接用」。