ERROR: failed to solve: failed to compute cache key: failed to calculate checksum of ref,找不到容器的目录

今天在使用k8s搭建微服务,在制作Springboot的docker镜像时用Dockerfile来创建镜像,没有创建成功,报错如下:

ERROR: failed to solve: failed to compute cache key: failed to calculate checksum of ref 13783d4a-f6a5-4af1-b4a0-750c312ebf66::zj0c1ggisjskzgb4d22u7iwcg: "/app": not found

我的Dockerfile文件内容大概长这个样子:

1.FROM openjdk:11
2.ADD  exmaple.tar /app
3.COPY example.sh /app  #不同应用需要修改
4.COPY example-SNAPSHOT.jar /app #不同应用需要修改

报错的意思是我的容器里不存在/app目录,但里面确实是存在这个目录的,百思不得其解,我用了排除法。将第3行和第4行注释掉,如下图所示:

1.FROM openjdk:11
2.ADD  exmaple.tar /app
3.#注释掉 COPY example.sh /app  #不同应用需要修改
4.# 注释掉了   COPY example-SNAPSHOT.jar /app #不同应用需要修改

然后再build,居然成功了。证明了/app这个目录是存在的,为何会报错说不存在/app目录。

于是又继续用排除法,将第4行注释掉,第三行的注释去掉。如下图所示:

1.FROM openjdk:11
2.ADD  exmaple.tar /app
3.COPY example.sh /app  #不同应用需要修改
4.# 注释掉了   COPY example-SNAPSHOT.jar /app #不同应用需要修改

继续build,同样是报错找不到/app目录。why?????

去百度,谷歌了很多博主写的这个问题,反馈的都是宿主机的目录不存在,依然找不到答案。

后来再仔细的看了Dockerfile的内容,一个想法冒出来了,是不是后面的注释导致的?

于是我将注释去掉了,如下所示:

1.FROM openjdk:11
2.ADD  exmaple.tar /app
3.COPY example.sh /app 
4.COPY example-SNAPSHOT.jar /app 

再次build,成功了!!!!

真实巨坑啊,注释不能放在后面,必须另起一行!!!

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值