最近想用 pve 新建一个 lxc 容器,用 docker 跑私有云相册,需要读取 ntfs 格式的硬盘,通过 usb 硬盘盒连接,为了提高性能想让 lxc 容器直通硬盘,但网上只有 kvm 虚拟机的直通硬盘教程,也就是 qm set 指令,想问一下 lxc 是不是本身就不需要直通操作,因为宿主机是 pve 本身,pve 已经挂载了硬盘,所以理论上就是直通的,性能也是最大化的?
![]() |
1
wccc 121 天前
是
|
![]() |
4
des 121 天前
Nextcloud 吗?好像 Nextcloud 对 LXC 不好
|
![]() |
5
HarveyLiu 121 天前 via Android
lxc 理论上和 docker 属于同一个隔离度,只不过 lxc 驱动的是 cpu 里已经集成的指令集,而 docker 驱动的是寄主的操作系统。
|
![]() |
6
HarveyLiu 121 天前 via Android
我做过实验,如果你的应用极度依赖 cpu ,那么 lxc 物理上更直接一点,如果是 io 应用频繁的,那么两者相差不大,也只有 3%的误差区间。
|
7
cm2gseh 121 天前 via Android
@kerb15
资源上没多大区别,要看业务需求,即这几个 docker 内容是否有关联,是否经常一起 up/down 。如果是,那么建议放一起,如果不是可以分开多个 lxc ,避免出问题时一起炸了。 |
![]() |
8
WinkeyLin 121 天前 via Android ![]() 不建议用 lxc 跑 docker ,嵌套虚拟化有性能问题
单独起个 alpine 虚拟机吧 |
9
FrankAdler 121 天前
pct set 143 -mp0 /mnt/down,mp=/data 可以直接映射目录
|
![]() |
10
des 121 天前 via iPhone
lxc 什么时候变成虚拟化了?
lxc 和 docker 都是基于内核 Cgroup 及 Namespace 能力开发啊 |
11
ltkun 121 天前 via Android
@WinkeyLin 用 lxc 可以在非特权容器下跑 docker 安全性更高 还有不建议用 alpine 跑 docker 没有 glibc 遇到有些应用会不兼容 发生内存泄漏 虽然概率很小 虽然我也用 alpine 来跑 docker
|
![]() |
12
sidkang 121 天前
专门测试过 docker 在 lxc 下的性能,平常用的各种都没发现什么问题,很好使~~
|
![]() |
13
wccc 121 天前
虽然 我也在 lxc 下跑 docker 但是我不太建议.尽量单独一个 lxc. 普通使用还是没有太大的问题的
|
14
ikidou 121 天前 via Android
我也遇到了,必须要特权容器才可以读写硬盘目录,总感觉有些膈应
|
![]() |
15
ResidualBlood 121 天前
如果个人用的话
直接 PVE 宿主跑 Docker |
16
joyanhui 119 天前
lxc 你可以叫他直通,也可以叫他挂载。无论 你怎么叫,他都是你说的`理论上就是直通的,性能也是最大化的`
除了楼上说的 pct set 143 -mp0 /mnt/down,mp=/data 还有 pct set XXXX -mpXXX /dev/sda1,mp=/data 都可以直通硬盘进去。。。 甚至 你可以 lxc 跑了 smb ,然后 pve 再反向挂回来。。。。 你也可以一个硬盘 /目录 直通 /挂载 到多个 lxc 当然,lxc 内部 smart 是用不了的。pve 自己可以搞定。 |