【发布时间】:2021-07-23 13:35:00
【问题描述】:
我有以下Dockerfile:
# syntax=docker/dockerfile:1
FROM windows
CMD echo Hello World!
我转到它所在的文件夹并运行命令:
docker build -t myapp .
这是我得到的输出:
#1 [internal] load build definition from Dockerfile
#1 sha256:a1d3c4a6e12f4cddf4afffc562b1433934c473851b755b2abc3f2fde935a1a92
#1 transferring dockerfile: 31B done
#1 DONE 0.0s
#2 [internal] load .dockerignore
#2 sha256:fb211a3db6387cb686b1196a6ecf918d5e247355af1defb5650b7e56a616141b
#2 transferring context: 2B done
#2 DONE 0.0s
#3 [internal] load metadata for docker.io/library/windows:latest
#3 sha256:d7ef60db0c57c36d3b2205b072a719bb2fde4c4f6da14ba36cfb712dae5b2314
#3 ...
#4 [auth] library/windows:pull token for registry-1.docker.io
#4 sha256:f2ddcdfd41cd000ab0347326f1abf8fae77a85d55a3cccd4448d5b972ac3e584
#4 DONE 0.0s
#3 [internal] load metadata for docker.io/library/windows:latest
#3 sha256:d7ef62dd0c57c36a3b2205b072b719bb2fde4b7f6ea31ba36cfb723dae5b2314
#3 ERROR: pull access denied, repository does not exist or may require authorization: server message: insufficient_scope: authorization failed
------
> [internal] load metadata for docker.io/library/windows:latest:
------
failed to solve with frontend dockerfile.v0: failed to create LLB definition: pull access denied, repository does not exist or may require authorization: server message: insufficient_scope: authorization failed
我对 Docker 很陌生,所以我不明白是什么导致了这个错误。我不知道如何检查我是否登录了 Dockedr Hub,也不知道如何检查名为 windows 的基础镜像是否存在。
This 的问题根本没有帮助。
1 我的文件名为Dockerfile。
2 我不知道buildkit 是什么,也不知道该放在哪里:
export DOCKER_BUILDKIT=0
export COMPOSE_DOCKER_CLI_BUILD=0
3 我刚刚安装了 Docker。我尝试了this 示例应用程序教程,它对我来说效果很好。
4 正如您在我的Dockerfile 中看到的那样,我不想复制任何东西。
另外,我收到以下错误:
$ docker pull mcr.microsoft.com/windows
Using default tag: latest
Error response from daemon: manifest
for mcr.microsoft.com/windows:latest
not found: manifest unknown: manifest tagged by "latest" is not found
我连servercore/insider都拉不动了:
$ docker pull mcr.microsoft.com/windows/servercore/insider
Using default tag: latest
Error response from daemon: manifest for mcr.microsoft.com/windows/servercore/insider:latest not found: manifest unknown: manifest tagged by "latest" is not found
即使我的本地 Docker 配置为使用 Windows 容器:
感觉有点毁灭性,我不知道为什么它不起作用以及如何解决它。
【问题讨论】:
-
您似乎在寻找不存在的图像:hub.docker.com/_/windows
-
@BMitch,我在哪里可以看到所有存储库的列表?另外,也许你碰巧知道什么是 windows 图像替代?
-
对于集线器上的存储库,您可以探索hub.docker.com。它们没有一个公开的列表(这将是一个很长的列表,就像要求所有 github 存储库的列表一样)。
-
@BMitch,我试过
microsoft-windows(因为有hub.docker.com/_/microsoft-windows),结果是一样的。