社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  docker

如何设置正确的路径来复制多步骤Docker构建的文件?

Gordienko R. • 6 年前 • 1662 次点击  

这是Dockerfile:

# tag block to refering
FROM node:alpine as builder
WORKDIR /home/server
COPY package.json .
RUN npm install
COPY . .
CMD ["npm", "run", "build"]

# on second step use another core image
FROM nginx

# copy files builded on previous step
COPY --from=builder /home/server/build usr/share/nginx/html

当使用命令“docker build”在本地计算机上构建图像时-它可以正常工作,但当我尝试将项目放入zeit时,会出现下一个错误:

Step 8/8 : COPY --from=builder /home/server/build usr/share/nginx/html
> COPY failed: stat   /var/lib/docker/overlay2/a114ae6aae803ceb3e3cffe48fa1694d84d96a08e8b84c4974de299d5fa35543/merged/home/server/build: no such file or directory

可能是什么?谢谢。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/30435
 
1662 次点击  
文章 [ 1 ]  |  最新文章 6 年前
David Maze
Reply   •   1 楼
David Maze    6 年前

Your first stage doesn't actually RUN the build command ,因此生成目录为空。将命令行更改为运行行。

一个提示:每个单独的行 docker build 序列生成自己的中间层,每个层都是可运行的Docker映像。你会看到输出

Step 6/8: CMD ["npm", "run", "build"]
 ---> Running in 02071fceb21b
 ---> f52f38b7823e

最后一个数字是有效的Docker图像ID,您可以

docker run --rm -it f52f38b7823e sh

看看照片里有什么。