docker集装箱内的haproxy
我是新来的docker和haproxy ..我试图按照官方docker中心回购的例子。
所以,我有Dockerfile
FROM haproxy:1.5 COPY haproxy.cfg /usr/local/etc/haproxy/haproxy.cfg
和简单的haproxyconfiguration(我希望将本地调用redirect到我的EB实例)
global # daemon maxconn 256 defaults mode http timeout connect 5000ms timeout client 50000ms timeout server 50000ms frontend http-in bind *:80 default_backend servers backend servers server server1 {my-app}.elasticbeanstalk.com:80 maxconn 32
build立并运行
$ docker build . $ docker run --rm d4598bcc293f
容器启动和卡住,Ctrl + C不会停止它。 “docker杀”只有帮助。
我的EB资源正在运行
$ curl {my-app}.elasticbeanstalk.com/status { "status": "OK" }
但本地通话失败
$ boot2docker ip 192.168.59.104 $ curl 192.168.59.104/status curl: (7) Failed to connect to 192.168.59.104 port 80: Connection refused
我错过什么或做错了什么?
谢谢!
更新:我发现调用redirect的问题。 haproxy.cfg中的端口号错误
但是这个问题仍然让我感到困扰…容器开始和Stuck,Ctrl + C不能阻止它。 “docker杀”只有帮助。
如果你希望能够用control-c退出,请执行docker run -i <image>
。 -i
表示将input传递给容器化的程序,如果HAProxy得到一个控件c,那么它将终止,这将停止容器。
HAProxy不会产生任何输出,除非你在debugging模式下运行它,所以没有太多的意义去运行附加,但是。 你可能会有更好的时间与docker run -d <image>
,将从容器分离,让它在后台运行。 要停止它,使用docker kill
。