如何在dockerfile中修改docker-compose.yml中挂载到容器的卷的所属用户组


问题背景:

  在docker-compose中通过volumes把Mac上的项目目录挂载到PHP容器中,我想修改PHP容器中,挂载卷的所属用户以及所属用户组。因此,我在dockerfile中通过RUN指令运行mkdir、chown,结果是毫无作用。

  原因是:RUN 是在 docker build时运行,因此容器都不一定存在。

解决方案:

  在dockerfile中使用CMD指令,CMD 在docker run 时运行。将mkdir、chown放到一个shell脚本中,通过CMD [ "/bin/bash", "/tmp/startup.sh"]调shell脚本。调用该shell脚本之前要用dockerfile的COPY指令将shell脚本copy到容器的某个目录中,例如/tmp目录


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM