我有Dockerfile,如下所示。 入口点中的脚本创建一个目录,并放置少量工件。
# from base image
FROM ......
RUN mkdir -p /home/myuser
RUN groupadd -g 999 myuser &&\
useradd -r -u 999 -g myuser myuser
ENV HOME=/home/myuser
ENV APP_HOME=/home/myuser/workspace
RUN mkdir $APP_HOME
WORKDIR $APP_HOME
RUN chown -R myuser:myuser $APP_HOME
USER myuser
ENTRYPOINT ......
我为上面的图片启动一个容器,如下所示
sudo docker run -v ${WORKSPACE}/output:/home/myuser/workspace/output image
我无法在主机中获得工件。 ${WORKSPACE}/output
经许可drwxr_xr_x
创建
将容器文件放入主机的过程是什么?
其他信息:
kit
myuser
Permission denied
drwxrwxrwx
的权限授予${WORKSPACE}/output
。然后我可以看到输出文件。答案 0 :(得分:0)
权限被拒绝错误是因为您正在使用uid 999运行容器,但试图写入uid 1000拥有的主机目录,并且仅将其配置为允许用户写入。您可以:
我在my slides here中对此进行了详细介绍。那里也有一些演讲者的注释(我相信P或S都会引起注意)。