0


docker中报permission denied错误

  • 执行 Docker 命令 提示 permission denied
  • docker命令permission denied
  • docker容器启动报错Permission denied
  • Docker容器内Permission denied解决方法
  • docker: Error response from daemon: OCI runtime create failed: container_linux.go:349: starting container process caused “exec: “/usr/local/tomcat/bin/catalina.sh”: permission denied”: unknown.

转自:https://lingkang.top/archives/docker-zhong-bao-permissiondenied-cuo-wu

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WimXPBA2-1684919670708)(/upload/2023/05/image-1684919040776.png)]

首先观察一下我的Dockerfile

  1. FROM adoptopenjdk/openjdk8:ubi
  2. # 工作目录
  3. WORKDIR /usr/local
  4. # 加入tomcat
  5. COPY apache-tomcat-9.0.75 /usr/local/tomcat
  6. ENV TZ=Asia/Shanghai
  7. EXPOSE 8080
  8. CMD chmod777 /usr/local/tomcat/bin/*.sh
  9. #启动时运行tomcat
  10. CMD ["/usr/local/tomcat/bin/catalina.sh","run"]

这是由于启动docker时使用的用户不是root导致

  1. CMD chmod

无效,将

  1. CMD chmod 777

改为

  1. RUN chmod 777

即可

解决

将添加全选的

  1. CMD chmod 777 /usr/local/tomcat/bin/*.sh

改为

  1. RUN chmod 777 /usr/local/tomcat/bin/*.sh
  1. PS 此方法只适用于非挂载宿主机目录,挂载宿主机目录时需要注意目录权限问题
  1. RUN

  1. CMD

的执行时机不同,

  1. RUN

是在构建镜像时执行,属于root权限。

  1. CMD

是在运行镜像时执行,此时会受到运行用户权限管控

标签: docker 容器 运维

本文转载自: https://blog.csdn.net/weixin_44480167/article/details/130851113
版权归原作者 凌康ACG 所有, 如有侵权,请联系我们删除。

“docker中报permission denied错误”的评论:

还没有评论