Docker Registry 2.0启用CORS

时间:2015-05-11 09:31:28

标签: ajax docker cors docker-registry

对于一个项目,我需要通过AJAX请求与私有Docker注册表进行通信,但由于“同源原则规则”我收到错误,我应该启用CORS。 我设法在启用CORS的情况下启动Docker Remote API(标志:--api-enable-cors)是否有任何与私有注册表相同的方法来执行此操作? 或者在启动私有注册表时是否有另一种启用CORS的方法? [编辑:仅供参考 - 注册表和提到的远程API在不同的机器上]

设置de private Registry我按照官方文档的步骤操作: https://docs.docker.com/registry/deploying/ 我正在使用Compose版本,在Registry Version 1.0和2.0之间切换......

我在网络实施方面相当不错,但这对我的项目来说是必要的。 在此先感谢您的帮助和帮助为坏英语而烦恼:)

1 个答案:

答案 0 :(得分:1)

不,不幸的是,v2注册表在此问答中不支持任何CORS选项。 v2注册表是一个用完全不同的语言编写的全新项目(Go与v1的Python),v1的许多功能尚未针对v2实现。实际上,您使用的标志(--api-enable-cors)是目前仅在docker远程API中可用的功能,而不是在v2注册表中。

我绕过v2(目前)有限的注册表API的方式是使用Jason Wilder's Nginx reverse proxy for docker,它使用他自己开发的docker-gen实用程序来代理docker容器。这样做会打开一堆标准"身份验证,CORS,SSL等功能。尽管现在这个功能没有在v2注册表中实现,但请记住,开发速度非常快。祝你好运!