当 docker cp 从本地主机到容器时,chown

问题描述 投票:0回答:1

我正在使用 docker 容器来构建我的应用程序,文件和文件夹的所有权是非 root 用户..

我需要将文件从本地物理机复制到docker容器,文件的所有权是root。这是我用来将文件从本地复制到 docker 容器的命令

docker cp resources <container-id>:/var/lib

我从本地机器复制到docker容器的资源文件夹的所有权是root,如何将其更改为非root所有权? docker 容器没有权限执行 chown 命令。

是否可以使用具有所有权的“docker cp”命令?

我的 docker 容器确实有 dockerfile,而 dockerfile 与此没有任何关系。我只想使用从本地主机复制到 docker 容器的文件的非 root 所有权。

linux docker
1个回答
0
投票

您可以使用标准的管道方法

tar

tar c resources | docker exec -i $container_name tar x -C /var/lib --uid $uid --gid $gid

其中

$uid
$gid
是容器内使用的非 root 用户和组 ID。

© www.soinside.com 2019 - 2024. All rights reserved.