多阶段 dockerfile 跳过部分/阶段 [Nodejs & Python]

Multistage dockerfile skips parts/stages [Nodejs & Python]

提问人:solaar45 提问时间:6/5/2023 最后编辑:solaar45 更新时间:6/5/2023 访问量:34

问:

我有一个项目,它由一个 React 网站(前端)和一个 flask 服务器(后端)上的 python 脚本组成。 我的文件夹结构如下所示:

. --backend --frontend --Dockerfile

我的多阶段 Dockerfile 的内容是:

FROM node:14-slim as frontend WORKDIR /app/frontend COPY frontend/package*.json ./ RUN npm install COPY frontend . RUN npm run build EXPOSE 3000 FROM python:3.9.5-slim-buster as backend WORKDIR /app/backend COPY backend . RUN pip install --no-cache-dir -r requirements.txt EXPOSE 5000 CMD ["python", "server.py"]

现在这是奇怪的部分:

当我运行构建 docker-image 时,不会执行 Dockerfile 的第一部分 (nodejs)。它以 python 开头,这意味着整个 nodejs 部分都丢失了,并且不会复制任何内容。我没有收到任何错误消息。docker build -t myname .

现在,当我将 Dockerfile 中的阶段切换为从 python 开始,然后从 nodejs 开始时,两者都将被执行,但容器将不起作用。

有没有人知道为什么第一阶段不会执行?我一筹莫展:/

我正在使用带有 docker 桌面的 Windows 10 计算机来构建我的映像/容器。

提前致谢!

reactjs flask dockerfile 跳过 docker-multi-stage-build

评论


答: 暂无答案