Google cloud platform Google云运行:将源文件夹从/更改为生成时复制失败
上面列出的生成文件夹Google cloud platform Google云运行:将源文件夹从/更改为生成时复制失败,google-cloud-platform,google-cloud-run,Google Cloud Platform,Google Cloud Run,上面列出的生成文件夹/var/lib/docker/tmp/docker-builder653325957/build,不是本地文件夹。Cloud Builder是否以该格式创建临时文件夹 如何让它复制我的本地build文件夹 我还尝试了COPY./build./,但CLI输出是相同的 下面是Dockerfile $ gcloud builds submit --tag gcr.io/projectname/testserver // ... works fine until the COPY
/var/lib/docker/tmp/docker-builder653325957/build
,不是本地文件夹。Cloud Builder是否以该格式创建临时文件夹
如何让它复制我的本地build
文件夹
我还尝试了COPY./build./
,但CLI输出是相同的
下面是Dockerfile
$ gcloud builds submit --tag gcr.io/projectname/testserver
// ... works fine until the COPY step:
Step 6/7 : COPY build ./
COPY failed: stat /var/lib/docker/tmp/docker-builder653325957/build: no such file or directory
ERROR
ERROR: build step 0 "gcr.io/cloud-builders/docker" failed: exit status 1
gcloudignore
命令使用.gitignore
和.gcloudignore
文件来确定Docker构建中包含哪些文件和目录。如果您的build
目录列在其中任何一个文件中,则无法将其复制到您的容器映像中。是您的.gcloudignore
或.gitinore
文件中列出的build
目录吗?@DustinIngram我尚未设置.gcloudignore
。是,.gitignore
(包括前面的/
为什么会这样?我想从我的git中排除构建文件,但将它们从一个容器移动到另一个容器默认情况下,.gcloudignore
可能递归地包括.gitignore
文件。如果希望它们表现不同,那么可以删除.gc中的行。)loudignore
包括.gitignore
。我实际上完全忽略了这个问题,在本地机器上构建并将该映像推送到gcloud
FROM node:12-slim
# Create app folder
WORKDIR /usr/src/app
# Install app deps. Copy the lock file
COPY package*.json ./
RUN npm install
ENV SCOPES=removed \
SHOPIFY_API_KEY=removed \
SHOPIFY_API_SECRET=removed \
CLIENT_APP_URL=removed
COPY build ./
CMD ["node", "server.js"]