docker私人registry – 方法不允许405

我正在尝试为Docker创build私有registry,而且我依赖于在Docker站点上给出的指示信息 。 我有一个单独的Linux中,这个registry安装的地方,然后我试图从本地(docker工具箱的OSX框)推我的图像。 我一直从registry服务器获得405。 docker工人我很新。 我希望默认的基本configuration工作没有太多的麻烦。

组态

最新的docker工具箱。 最新的registry安装 我只更改TLSconfiguration以通过http发布请求。

错误

The push refers to a repository [192.168.1.98:5000/complete] (len: 1) Sending image list Error: Status 405 trying to push repository complete: "<!DOCTYPE HTML PUBLIC \"-//IETF//DTD HTML 2.0//EN\">\n<html><head>\n<title>405 Method Not Allowed</title>\n</head><body>\n<h1>Method Not Allowed</h1>\n<p>The requested method PUT is not allowed for the URL /v1/repositories/complete/.</p>\n</body></html>\n" 

文件提到

 405 Method Not Allowed 

Manifest put是不允许的,因为registry被configuration为直通式caching或其他原因

(如只读模式 )

UNSUPPORTED:由于缺less实现或无效的参数集,操作不受支持。

相同的文档使用包含/ v2的URL,而不是在问题中使用的URL( /v1/repositories/complete

说明包括:

正确的标题是非常重要的。 对于“ /v2/ ”url空间下的任何请求的所有响应,即使对于4xx响应, Docker-Distribution-API-Version标头也应设置为值“ registry/2.0

确保你正在运行一个v2registry镜像(现在是docker发行版 )


OP Charith实际上在评论中发现:

registry主机上的端口转发错误: 5000端口正在从另一台服务器提供服务
我已经切换到一个可用的端口,一切开始工作。