【发布时间】:2017-01-24 04:55:32
【问题描述】:
我有一个正在运行的节点服务器,它监听 3 个不同的端口。
我有一个 url 的三个不同子域,指向正在运行/侦听节点的服务器的端口 80。
我要做的是使用haproxy代理将请求从子域传递到其各自的端口。
我的节点服务器使用主机上暴露的端口进行了 docker 化。我可以在他们的端口上使用服务器的 IP 地址单独点击他们,这样他们似乎运行良好。
我的haproxy 也将在 docker 容器中运行。我对haproxy 完全陌生,尽管我对码头工人相当有信心。我通过在线文章和博客编写了我的 haproxy 配置,但是一旦我使用以下方式启动我的 docker 容器:
docker run --name my-running-haproxy \
-v ./haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg:ro \
haproxy:1.6.2
我收到以下错误:
来自守护程序的错误响应:./haproxy.cfg 包含本地卷名的无效字符,仅允许 [a-zA-Z0-9][a-zA-Z0-9_.-]
所以我尝试通过删除配置选项进行调试,直到我有一个非常简约的配置:
haproxy.cfg
global
maxconn 256
debug
defaults
mode http
timeout connect 5000ms
timeout client 50000ms
timeout server 50000ms
frontend http-in
bind *:80
default_backend default-server
backend default-server
server s0 127.0.0.1:3000
但我仍然遇到同样的错误。
谁能帮我解决这个问题?
【问题讨论】: