docker 登录“连接被拒绝”,但仅在引擎运行时

问题描述 投票:0回答:1

我在 Kubernetes 中有一个私有注册表,我已使用它连接到

kubectl port-forward docker-registry-6bc94649d-529hq 443:5000

我可以通过curl请求在我的浏览器中成功登录并与之交互,但由于某种原因Docker(Docker桌面-Windows)我可以在端口转发中看到甚至没有一个请求需要它处理。我添加了一条规则以允许连接 docker exe 文件,并且我也尝试完全关闭防火墙,但仍然没有任何结果。任何帮助将不胜感激,谢谢。

发动机未运转时:

C:\Users\josep>curl -k https://localhost:443/v2/_catalog -u admin:pass
{"repositories":[]}

C:\Users\josep>docker login 127.0.0.1:443 -u admin -p pass
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
Login Succeeded

C:\Users\josep>docker image list
error during connect: this error may indicate that the docker daemon is not running: Head "http://%2F%2F.%2Fpipe%2Fdocker_engine/_ping": open //./pipe/docker_engine: The system cannot find the file specified.

现在发动机正在运转:

C:\Users\josep>docker login 127.0.0.1:443 -u admin -p pass
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
Error response from daemon: Get "http://127.0.0.1:443/v2/": dial tcp 127.0.0.1:443: connect: connection refused

C:\Users\josep>docker image list
REPOSITORY   TAG       IMAGE ID   CREATED   SIZE
windows docker docker-registry
1个回答
0
投票

我发现这是 Docker Desktop 在虚拟机中运行引擎的问题(此处),因此我将端口转发命令更改为:

kubectl port-forward docker-registry-7dc967c478-qkx5k --address=192.168.0.228 443:5000

这样虚拟机中的引擎就可以访问注册表了。

© www.soinside.com 2019 - 2024. All rights reserved.