我试图为我的盖茨比应用程序构建Docker映像。每当我运行命令docker构建。-t gatsbyapp,它会给出一个错误:

failed to solve with frontend dockerfile.v0: failed to build LLB:
failed to compute cache key: "/.env" not found: not found

同时我的Dockerfile如下所示:

FROM node:13

WORKDIR /app

COPY package.json .

RUN yarn global add gatsby-cli

RUN yarn install

COPY gatsby-config.js .

COPY .env .

EXPOSE 8000

CMD ["gatsby","develop","-H","0.0.0.0"]

当前回答

在我的情况下,我不得不卸载Astrill VPN。

其他回答

在我的情况下,我不得不卸载Astrill VPN。

通过设置HTTP_PROYY和HTTP_PROXYS环境变量来指定代理服务器。

例子:

http_proxy=http://username:password@proxy.example.com:8080
https_proxy=http://username:password@proxy.example.com:8080

我不记得我到底是在哪里读到这篇文章的,但如果您正在使用WSL2并收到这个错误,那么请删除WSL2主文件夹中的Docker配置文件,并尝试重新构建映像。

也就是说,如果你已经检查了你的文件名,并再次确认所有的命名都是正确的(Dockerfile, .dockerignore等)。

WSL2 Ubuntu:

rm ~/.docker/config.json

可能不是OP的问题,但我在试图构建运行在Windows Linux子系统(WSL) (Debian WSL2)中的容器时遇到了这个问题,刚刚安装了Docker Compose,我所要做的就是关闭(Debian)终端并重新打开它,我的问题就解决了。

对我来说

无法用前端dockerfile解决。v0:创建LLB失败定义:当前上下文中没有构建阶段

是在FROM之前设置ENV引起的。对于某些Dockerfile指令,这可能是不允许的。在移动ENV之后,FROM错误就消失了。