"COPY failed: no source files were specified" 当 Docker 文件不在 Docker Hub 的根目录中时
"COPY failed: no source files were specified" when Dockerfile is not in root directory on Docker Hub
当我 运行 我的应用程序通过 docker-compose up
时,它的构建和 运行 没有任何问题。当我尝试在 Docker Hub 上托管它时,它无法构建并出现错误 COPY failed: no source files were specified
。我相信这是因为 Docker 文件不在根目录中。
我的文件夹结构是这样的:
root
-- docker-compose.yml
-- app
-- Dockerfile
-- package.json
-- package-lock.json
-- src
-- .....
我的 Docker 文件在下面,当我 运行 docker-compose up
(指向 /app
中的 Docker 文件时)它 运行很好:
FROM node:8.10.0-alpine
WORKDIR /usr/src/app
COPY package*.json /usr/src/app/
RUN npm install --production
COPY . /usr/src/app
EXPOSE 4000
CMD ["npm", "run", "app"]
我想在 Docker Hub 上托管我的项目,但出现以下错误:
Step 1/7 : FROM node:8.10.0-alpine
---> adc4b0f5bc53
Step 2/7 : WORKDIR /usr/src/app
Removing intermediate container 743246352cea
---> 3dcb720d4618
Step 3/7 : COPY package*.json /usr/src/app/
COPY failed: no source files were specified
我设置的指向正确Docker文件位置的构建规则如下:
我的 Docker 文件有误吗,或者当我尝试将它连接到我的 GitHub 存储库时我没有正确配置 Docker 集线器?
对于上下文,GitHub 存储库是 here。
在构建配置中,您需要配置"build context"目录而不是更改Dockerfile位置。否则,构建将 运行 在 github 存储库的父级中,其中 package*.json
文件不存在。在下面的示例中配置自动构建时,请注意 "Dockerfile location" 之后的列:
当我 运行 我的应用程序通过 docker-compose up
时,它的构建和 运行 没有任何问题。当我尝试在 Docker Hub 上托管它时,它无法构建并出现错误 COPY failed: no source files were specified
。我相信这是因为 Docker 文件不在根目录中。
我的文件夹结构是这样的:
root
-- docker-compose.yml
-- app
-- Dockerfile
-- package.json
-- package-lock.json
-- src
-- .....
我的 Docker 文件在下面,当我 运行 docker-compose up
(指向 /app
中的 Docker 文件时)它 运行很好:
FROM node:8.10.0-alpine
WORKDIR /usr/src/app
COPY package*.json /usr/src/app/
RUN npm install --production
COPY . /usr/src/app
EXPOSE 4000
CMD ["npm", "run", "app"]
我想在 Docker Hub 上托管我的项目,但出现以下错误:
Step 1/7 : FROM node:8.10.0-alpine
---> adc4b0f5bc53
Step 2/7 : WORKDIR /usr/src/app
Removing intermediate container 743246352cea
---> 3dcb720d4618
Step 3/7 : COPY package*.json /usr/src/app/
COPY failed: no source files were specified
我设置的指向正确Docker文件位置的构建规则如下:
我的 Docker 文件有误吗,或者当我尝试将它连接到我的 GitHub 存储库时我没有正确配置 Docker 集线器?
对于上下文,GitHub 存储库是 here。
在构建配置中,您需要配置"build context"目录而不是更改Dockerfile位置。否则,构建将 运行 在 github 存储库的父级中,其中 package*.json
文件不存在。在下面的示例中配置自动构建时,请注意 "Dockerfile location" 之后的列: