Lew*_*wik 13 docker dockerfile
我收到以下错误:
无法导出图像:无法创建图像:无法获取图层 sha256:xxxxxxxxxxxxx:图层不存在
Dockerfile:
FROM openjdk:8
COPY ./lib/ /usr/src/app/BOOT-INF/lib/
COPY ./lib/entities-1.0-SNAPSHOT.jar /usr/src/app/BOOT-INF/lib/entities-1.0-SNAPSHOT.jar
COPY ./app/ /usr/src/app/
WORKDIR /usr/src
CMD ["java", "-cp", "app/", "org.springframework.boot.loader.JarLauncher"]
Run Code Online (Sandbox Code Playgroud)
输出:
Step 3/6 : COPY ./lib/entities-1.0-SNAPSHOT.jar /usr/src/entities-1.0-SNAPSHOT.jar
---> 3acb1f6c911a
Step 4/6 : COPY ./app.jar /usr/src/app.jar
failed to export image: failed to create image: failed to get layer sha256:33a94c44f7804ae3f57b9e72f94323c15cef7267be7eb95d90d2a1673c4b33b9: layer does not exist
Run Code Online (Sandbox Code Playgroud)
第二次运行总是有帮助 - 错误消失。我正在构建多个不同的图像(不同的 jar),在不同的目录中使用不同的 Dockerfile。但是 Dockerfiles 的内容是一样的。
我认为添加后出现此错误:
COPY ./lib/entities-1.0-SNAPSHOT.jar /usr/src/app/BOOT-INF/lib/entities-1.0-SNAPSHOT.jar
Run Code Online (Sandbox Code Playgroud)
我不想删除那一行:app 和实体是我的库。如果我删除行 - 我将得到一个第三方库(50mb)与实体(2mb)合并的层。
veb*_*ben 21
COPY
多阶段构建中的特定命令序列会出现此问题。
更准确地说,当有一条COPY
指令产生空效果时(例如,如果复制的内容已经存在于目标中,并且 0 diff),则触发错误,然后紧跟另一COPY
条指令。
解决方法可能是RUN true
在COPY
语句之间添加:
COPY ./lib/ /usr/src/app/BOOT-INF/lib/
RUN true
COPY ./lib/entities-1.0-SNAPSHOT.jar /usr/src/app/BOOT-INF/lib/entities-1.0-SNAPSHOT.jar
RUN true
COPY ./app/ /usr/src/app/
Run Code Online (Sandbox Code Playgroud)
另一种似乎有效的方法是使用 启动构建BUILDKIT
,如下所示:
DOCKER_BUILDKIT=1 docker build --tag app:test .
Run Code Online (Sandbox Code Playgroud)
见:https : //github.com/moby/moby/issues/37965
Cry*_*ptc -2
我收到此错误,但它没有告诉我任何信息。如果您希望它输出实际错误,请使用以下命令:
docker-compose -f "docker-compose.yml" up --remove-orphans --force-recreate' <optional service: e.g. "nginx">
Run Code Online (Sandbox Code Playgroud)
从:
错误:服务“nginx”构建失败:导出图像失败:创建图像失败:无法获取层 sha256:63d3...:层不存在
到:
创建project_nginx ...完成
附加到project_nginx
nginx_1 | 2019/06/12 03:27:30 [紧急] 1#1:BIO_new_file(“/etc/ssl/certs/dhparam.pem”)失败(SSL:错误:02001002:系统库:fopen:没有这样的文件或目录:fopen('/etc/ssl/certs/dhparam.pem','r')错误:2006D080:BIO例程:BIO_new_file:没有这样的文件)
从那里我可以找到实际的问题。但是,从最初的错误中,您无法知道到底是什么导致了失败。
归档时间: |
|
查看次数: |
10295 次 |
最近记录: |