搬运工推了“错误解析HTTP 405 ...... POST不允许”

问题描述:

我下面就搬运工推了“错误解析HTTP 405 ...... POST不允许”

https://docs.docker.com/get-started/part2/#conclusion-of-part-two

Docker教程当我跑的docker push的命令,我得到这个错误

[[email protected] firstDocker]# docker push leeyuiwah/get-started:part2 
The push refers to a repository [registry.access.redhat.com/leeyuiwah/get-started] 
7a8cded9ffac: Preparing 
77a209967ebf: Preparing 
00d1486114fa: Preparing 
24b02a08f57d: Preparing 
aed9311ebf15: Preparing 
17f9d9d4ce37: Waiting 
18f9b4e2e1bc: Waiting 
error parsing HTTP 405 response body: invalid character '<' looking 
for beginning of value: "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 3.2 
Final//EN\">\n<title>405 Method Not Allowed</title>\n 
<h1>Method Not Allowed</h1>\n<p> 
The method POST is not allowed for the requested URL.</p>\n" 

我在互联网上搜索。已经有在这个论坛上同样的错误 的报道很多,但没有答案:

https://forums.docker.com/t/docker-push-command-is-throwing-error-405-method-not-allowed/28384/4

我在防火墙后面,但是当我docker run hello-world, 从网上拉图像,这个命令测试 跑没有问题。

我使用的版本稍低于教程 的建议。不知道这是否是原因。

[[email protected] firstDocker]# docker --version 
Docker version 1.12.6, build 3a094bd/1.12.6 
+0

从@Ahmed_Rahat,谁没有足够的代表发表评论:我在RedHat上,并遵循你所概述的。我得到了和你一样的结果,但这是否允许你稍后从dockerhub中提取图像?我做了同样的工作,推送工作正常,但当我搜索它或当我尝试码头拉时,图像不在码头集线器上。 – FrankerZ

检查您的主机名(特别是如果你是一个RedHat系统上运行)

(CF this bug report with Redhat

我意识到,不给的参数标签和推命令,我实际上使用不同的注册表(registry.access.redhat.com而不是hub.docker.com)。

[[email protected] firstDocker]# docker push leeyuiwah/get-started:part2 
The push refers to a repository 
[registry.access.redhat.com/leeyuiwah/get-started] 
Error: Status 404 trying to push repository leeyuiwah/get-started: 
"<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 3.2 Final//EN\">\n 
<title>404 Not Found</title>\n<h1>Not Found</h1>\n 
<p>The requested URL was not found on the server.</p> 
<p>If you entered the URL manually please check your spelling and try again.</p> 
\n" 

所以,现在我明确地设置注册表,但后来我得到Index response didn't contain any endpoints

[[email protected] firstDocker]# docker-latest tag friendlyhello hub.docker.com/leeyuiwah/get-started:part2 
[[email protected] firstDocker]# docker-latest push hub.docker.com/leeyuiwah/get-started:part2 
The push refers to a repository [hub.docker.com/leeyuiwah/get-started] 
3088bc0df692: Preparing 
fa9c71108753: Preparing 
4cc654f2b860: Preparing 
24b02a08f57d: Preparing 
aed9311ebf15: Preparing 
17f9d9d4ce37: Waiting 
18f9b4e2e1bc: Waiting 
Index response didn't contain any endpoints 

版本

我也切换到使用最新的码头工人,以确保公正问题 是不是由于版本。

[[email protected] firstDocker]# docker-latest --version 
Docker version 1.13.1, build 6774275/1.13.1 

虚假响应docker login

我还注意到的一件事是login命令一直给 我伪造了Login Succeeded响应。这可能是一个因素吗?

[[email protected] firstDocker]# docker-latest login hub.docker.com 
Username (leeyuiwah): bogus (I don't think this is a valid account) 
Password:     (just type in some junk) 
Login Succeeded 

测试与本地自托管注册表

(C.F. Docker Doc: Run a local registry

我能得到推动与当地自托管登记工作。不过我 是使用伪造的登录

安装本地自托管注册表

[[email protected] firstDocker]# docker run -d -p 5000:5000 --restart=always --name registry registry:2 
Unable to find image 'registry:2' locally 
Trying to pull repository registry.access.redhat.com/registry ... 
Trying to pull repository docker.io/library/registry ... 
2: Pulling from docker.io/library/registry 
90f4dba627d6: Pull complete 
b3e11d7b4f5e: Pull complete 
1f032f3c8932: Pull complete 
425585e7aedb: Pull complete 
f45f535a83d2: Pull complete 
Digest: sha256:0f8fe61fa337b8ef02217702ba979b47a7d68717d4628f31592ebff85915f3ba 
37f70dbd0e4f96707d07579c8ab8577032cefa9142af0c13c2dace23adda213a 

做一个假的登录

[[email protected] firstDocker]# docker-latest login localhost:5000 
Username: dkfjld  (bogus account name) 
Password:    (bogus password) 
Login Succeeded   (this still bugs me!) 

标签,然后按==>这一次,它的工作原理!

[[email protected] firstDocker]# docker-latest tag friendlyhello localhost:5000/leeyuiwah/get-started:part2 
[[email protected] firstDocker]# docker-latest push localhost:5000/leeyuiwah/get-started:part2 
The push refers to a repository [localhost:5000/leeyuiwah/get-started] 
3088bc0df692: Pushed 
fa9c71108753: Pushed 
4cc654f2b860: Pushed 
24b02a08f57d: Pushed 
aed9311ebf15: Pushed 
17f9d9d4ce37: Pushed 
18f9b4e2e1bc: Pushed 
part2: digest: sha256:23c9720ee308ab6fa6ec8b0c23c40fadc7562fe34352d64b2322f43a90dfec0b size: 1787