1

我不确定这是否可以实现。我正在使用以下版本以 swarm 模式运行 docker:

客户端:版本:17.03.0-ce API 版本:1.26 Go 版本:go1.7.5 Git 提交:3a232c8 构建:2017 年 2 月 28 日星期二 08:10:07 OS/Arch:linux/amd64

服务器:版本:17.03.0-ce API 版本:1.26(最低版本 1.12) Go 版本:go1.7.5 Git 提交:3a232c8 构建时间:2017 年 2 月 28 日星期二 08:10:07 OS/Arch:linux/amd64 实验性:true

我在 NGINX 反向代理后面运行带有基于 websocket 的应用程序的堆栈(也在使用相同覆盖网络的同一堆栈中)但是,我注意到以下错误。该应用程序基于节点 js。

从上游读取响应标头时上游超时(110:操作超时),客户端:xxxx,服务器:,请求:“GET /socket.io/?EIO=3&transport=polling&t=LiGxq_l&sid=As9AJ2pEHieTGXP6AAAC HTTP/1.1”,上游: “ http://xxxx/socket.io/?EIO=3&transport=polling&t=LiGxq_l&sid=As9AJ2pEHieTGXP6AAAC ”,主机:“”,推荐人:“”

显然,客户端套接字连接无法解析到托管在 swarm 中的服务集群。是否有针对 docker swarm 的解决方法配置,或者这是不可能的?我没有太多运气来寻找解决方案。感谢您的任何反馈。顺便提一句。该服务的单个实例工作正常。

4

1 回答 1

0

我为自己创建了一个使用 nodejs 构建的图像,名为nginx-autoconf。它监听 docker socket 并自动更新 nginx 配置。

于 2018-04-28T09:19:10.423 回答