主要有两种情况,1特权容器 2 无特权容器
特权容器
如果lxc创建的时候 没有勾选 无特权容器 那么直接挂载即可
例如 lxc 的id是50443(就是pve里面显示的虚拟机和ct的那个数字) ,要把pve的 /nvme/lxc_mount/nginxWebUI
挂载到lxc容器里面的 /home/nginxWebUI
范例挂载这个目录出来是为了pve能使用nginxwebui自己签名的ssl证书,以及其他服务也可以用。
|
|
执行完成后 不需要重启 即可生效。
上面的命令等同 在 /etc/pve/lxc/50443.conf
添加一行
|
|
往后就mp1、mp2、mp3 。。。。
非特权容器
基于安全性考虑,以及嵌套docker的时候的一些问题,创建ct容器的时候,通常使用非特权容器。 这个时候直接挂载的目录可能会有权限问题。 其实可以用特权用户运行docker 查看 : http://dev.leiyanhui.com/pve/kxc-docker-err
查看root用户情况
|
|
root的从属用户起始id为100000,数量65536个。
修改lxc的用户
把lxc里面的用户映射到pve的root用户
容器内root(id=0)映射为pve 服务器id 100000,递增65536个,即容器内用户id 0-65535对应服务器100000-165535
nano /etc/pve/lxc/50443.conf
添加两行
|
|
配置目录权限
将挂载目录让容器内root可读写的话在服务器内将所有者更改为id 100000。
|
|
对应目录不可以是非linux原生文件系统,比如ntfs exfat均不可以
pve上映射用户
映射pve用户,服务器和容器内有相同ID的用户。
nano /etc/subuid
添加一行
|
|
nano /etc/subgid
添加一行
|
|
本文参考:https://www.haiyun.me/archives/1419.html