我有以下设置:
我想使用nginx来反向代理其余的群集服务,用于ssl终端。
在门户程序和webapp主页端口上使用反向代理时,我取得了成功。
但是,我的用户可以启动一个“会话”,它将在(大)范围内的随机端口上运行,并且可以从主节点上的端口x访问。
当我在其中一个端口上使用location语句时,假设我们在nginx配置中执行如下操作(在配置中的正确位置),它不起作用:
location /x {
proxy_pass http://127.0.0.1:x;
proxy_redirect off;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}为什么是这种情况?
发布于 2018-11-20 18:55:15
我认为有更好的方法来解决这个问题。使用Traefik反向代理(或类似的)作为群集服务,并使用服务标签来定义应该路由到特定服务的端口。这样,您需要发布的特定容器端口列表将通过traefik动态地路由到它。Traefik可以与Docker/Swarm对话,并将根据集群实时发生的情况更新其代理规则。在https://github.com/BretFisher/dogvscat上看我的例子和视频
https://serverfault.com/questions/940581
复制相似问题