在Tutum

时间:2015-10-25 17:53:11

标签: docker haproxy docker-registry

Tutum上有以下内容:

注册表

  1. 启动注册表:2.1.1服务
  2. 发布了端口5000并使用以下命令配置了注册表服务:

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

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

    工作得很好,包括SSL!

  4. HAProxy的

    1. 启动了tutum / haproxy:最新服务,发布了443端口,添加了API访问并链接到了注册表服务,其他一切都是默认的
    2. 将my-registry.my-host.net指向DNS到haproxy服务端点并使用以下命令测试注册表登录:

      docker login my-registry.my-host.net
      

      这次请求失败了:

      503 Service Unavailable
      No server is available to handle this request.
      
    3. 我错过了什么?

      注意:一切都是通过Tutum的仪表板Web UI完成的。

      此外,这里是来自HAProxy服务容器的生成的haproxy.cfg,适用于那些有HAProxy经验但不一定使用Tutum的人:

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

1 个答案:

答案 0 :(得分:1)

解决了它。

我必须做以下事情:

  1. 将注册表服务的环境变量从TCP_PORTS = 5000 / ssl更新为TCP_PORTS = 5000

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

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

    docker login my-registry.my-host.net