gpt4 book ai didi

docker - 如何在不以root用户身份运行的情况下读写装载的卷?

转载 作者:行者123 更新时间:2023-12-02 19:39:45 26 4
gpt4 key购买 nike

使用以下命令安装卷时:

docker run -t -i --volumes-from FOO BAR

FOO中的卷以root作为所有者安装。据我所知,如果不以root用户身份运行,我将无法对其进行读写。我必须以root用户身份运行还是有其他方法?

我尝试过在挂载之前与其他所有者创建文件夹,但是挂载似乎覆盖了该文件夹。

编辑:如果可以以某种方式自动完成安装,则 chown将起作用。

最佳答案

我不确定为什么您不能在源镜像中更改文件夹权限。在我的实验室中,这没有问题:

$ cat df.vf-uid
FROM busybox

RUN mkdir -p /data && echo "hello world" > /data/hello && chown -R 1000 /data

$ docker build -f df.vf-uid -t test-vf-uid .
...
Successfully built 41390b132940

$ docker create --name test-vf-uid -v /data test-vf-uid
e12df8f84a3b1f113ad5440b62552b40c4fd86f99eec44698af9163a7b960727

$ docker run --volumes-from test-vf-uid -u 1000 -it --rm busybox /bin/sh
/ $ ls -al /data
total 12
drwxr-xr-x 2 1000 root 4096 Aug 22 11:44 .
drwxr-xr-x 19 root root 4096 Aug 22 11:45 ..
-rw-r--r-- 1 1000 root 12 Aug 22 11:43 hello
/ $ echo "success" >/data/world
/ $ ls -al /data
total 16
drwxr-xr-x 2 1000 root 4096 Aug 22 11:46 .
drwxr-xr-x 19 root root 4096 Aug 22 11:45 ..
-rw-r--r-- 1 1000 root 12 Aug 22 11:43 hello
-rw-r--r-- 1 1000 root 8 Aug 22 11:46 world
/ $ cat /data/hello /data/world
hello world
success
/ $ exit

关于docker - 如何在不以root用户身份运行的情况下读写装载的卷?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39020093/

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