gpt4 book ai didi

linux - 全局文件到 LXC 容器?

转载 作者:太空宇宙 更新时间:2023-11-04 09:41:18 25 4
gpt4 key购买 nike

有没有办法让所有 LXC 容器都可以访问一个文件?我有一个 SQLite 数据库,我想与我的所有容器共享,这可能吗?

最佳答案

简单易行。使用挂载绑定(bind)。

这是一个例子。

首先,创建一个目录来存放您要在主机上共享的文件。

mkdir /var/shared

接下来我们需要在我们可以挂载的容器中创建一个目录。我在 Ubuntu 中使用默认位置并有 2 个容器。一个名为“test1”,另一个名为“test2”。

mkdir /var/lib/lxc/test1/rootfs/var/shared
mkdir /var/lib/lxc/test2/rootfs/var/shared

mkdir /var/lib/lxc/<lxc container name here>/rootfs/var/shared

以上命令是可选的。您可以使用容器中的任何子目录。我说“/var/shared”。

接下来我们做:

mount -o bind /var/shared /var/lib/lxc/test1/rootfs/var/shared
mount -o bind /var/shared /var/lib/lxc/test2/rootfs/var/shared

要使此在主机重新启动后保持不变,请执行以下操作。

# vi /etc/fstab

添加以下内容

/var/shared   /var/lib/lxc/test1/rootfs/var/shared   none   rw,bind   0   0
/var/shared /var/lib/lxc/test2/rootfs/var/shared none rw,bind 0 0

再次将 test1 和 test2 替换为您正确命名的容器。

放置在/var/shared 目录中的任何内容都可以被所有具有挂载的容器访问。但是由于每个子容器的 UID 和 GID 可能不同,您可能必须 chmod 666 才能让每个容器的必要用户读取/写入内容。

如果您需要任何进一步的解释或帮助,请发表评论。-弗兰克

关于linux - 全局文件到 LXC 容器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21112414/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com