在Tutum上使用HAProxy负载均衡Docker Registry v2

以下是关于Tutum:

注册处

  1. 开始registry:2.1.1服务
  2. 发布端口5000并configurationregistry服务:

    VIRTUAL_HOST=https://my-registry.my-host.net TCP_PORTS=5000/ssl SSL_CERT="..." 
  3. 现在,将my-registry.my-host.net DNS指向registry服务端点,并使用以下命令testingregistry:

     docker login my-registry.my-host.net:5000 

    工作得很好,包括SSL!

HAProxy的

  1. 开始了tutum / haproxy:最新的服务,发布了443端口,增加了API访问并链接到registry服务,其他一切都是默认的
  2. 将my-registry.my-host.net DNS指向haproxy服务端点,并用以下方式testingregistrylogin:

     docker login my-registry.my-host.net 

    这一次,请求失败:

     503 Service Unavailable No server is available to handle this request. 

我错过了什么?

注意:所有事情都是从Tutum的仪表板Web UI完成的。

另外,这里是从HAProxy服务容器生成的haproxy.cfg,对于那些有HAProxy的经验,但不一定与Tutum有关的人:

https://gist.github.com/lazabogdan/3bf52984faa092b1a50b (注意:registry服务ID已被XXXXXXXX屏蔽,实际的FQDN已被my-registry.my-host.net所取代)

解决了它。

我必须做到以下几点:

  1. 将registry服务的环境variables从TCP_PORTS = 5000 / ssl更新为TCP_PORTS = 5000

  2. 在haproxy服务上,展示容器上的端口5000,并将其发布到主机端口443上。

  3. 现在,我可以成功地做到:

     docker login my-registry.my-host.net