Java一分钟 || Docker因权限问题无法启动Springboot怎么办

  

Java一分钟  ||  Docker因权限问题无法启动Springboot怎么办

  问题

  把 Springboot 的 jar 包打进 Docker 镜像后,无法正常启动,而在本地测试可以正常启动。

  查看日志,主要有两种报错信息:

  (1)关于H2的报错:This is very likely to create a memory leak.

  (2)关于Socket:java.net.SocketException: Permission denied

  解决过程

  针对报错(1),增大JVM启动内存,依然无法解决,不是该问题。所以可能也是由于权限问题引起的。

  在 Dockerfile 添加赋权:

  RUN chmod 755 -R dataflow-server.jar

  结果在 build 镜像的时候报错:

  chmod: changing permissions of xxx: Operation not pemitted

  解决方案一:

  使用 root 用户执行:

  USER root

  RUN chmod 755 -R dataflow-server.jar

  解决方案二:

  在打包前赋值, docker 会保留本来的权限。

  赋值后,成功启动!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值