部署 docker 注册表时遇到格式错误的 http 响应

部署 docker 注册表时遇到格式错误的 http 响应

运行 docker push docker push myregistry.com/testexpose 命令时遇到以下错误。

推送指向存储库 [myregistry.com/testexpose]

Put http://myregistry.com/v1/repositories/testexpose/: malformed HTTP response "\x15\x03\x01\x00\x02\x02"

证书已按照docker构建官方指南

我可以看到docker正在正确运行。

[root@ip-10-1-1-229 docker]# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                          NAMES
b28c6a3be012        registry:2          "/entrypoint.sh /e..."   35 minutes ago      Up 19 minutes       0.0.0.0:80->80/tcp, 5000/tcp   registry

Docker容器日志如下:

2017/07/02 01:56:12 http: TLS handshake error from 172.17.0.1:42218: tls: first record does not look like a TLS handshake
2017/07/02 01:56:12 http: TLS handshake error from 172.17.0.1:42224: tls: first record does not look like a TLS handshake
2017/07/02 01:56:13 http: TLS handshake error from 172.17.0.1:42230: tls: first record does not look like a TLS handshake
2017/07/02 01:56:13 http: TLS handshake error from 172.17.0.1:42236: tls: first record does not look like a TLS handshake
2017/07/02 01:56:14 http: TLS handshake error from 172.17.0.1:42242: tls: first record does not look like a TLS handshake
2017/07/02 01:56:14 http: TLS handshake error from 172.17.0.1:42248: tls: first record does not look like a TLS handshake
2017/07/02 01:56:15 http: TLS handshake error from 172.17.0.1:42254: tls: first record does not look like a TLS handshake
2017/07/02 01:56:15 http: TLS handshake error from 172.17.0.1:42260: tls: first record does not look like a TLS handshake
2017/07/02 01:56:15 http: TLS handshake error from 172.17.0.1:42266: tls: first record does not look like a TLS handshake
2017/07/02 01:56:15 http: TLS handshake error from 172.17.0.1:42272: tls: first record does not look like a TLS handshake

这似乎是一个身份验证错误,但 CN 是myregistry.com在创建 x.509 证书期间设置的。有人能弄清楚发生了什么吗?谢谢。

答案1

您似乎正在使用 HTTP 连接到 HTTPS。您需要映射端口 443,而不是端口 80,然后使用https://myregistry.com...

相关内容