2

我正在尝试在 Docker 中运行服务器(EventStore),在这种情况下是他们自己的图像。我正在使用 -P 标志运行此映像以分配外部端口。(我的使用使得特定的端口分配不切实际。)

当我启动 EventStore 的图像时,端口 2113(他们的网络端口)被映射到某个高端口,比如 33125。如果我在浏览器中输入 (my_ip):33125,它会被重写为 (my_ip):2113/web/ . 当然,在 Docker 端口 2113 之外没有任何意义!

我怎样才能防止这种重写,或者至少将它全部包含在 Docker 中?

4

2 回答 2

2

您遇到了一个已知问题。文档说:

注意:管理 UI 和 atom 提要仅在您将节点的 http 端口发布到主机上的匹配端口时才有效。(即您需要使用 运行容器-p 2113:2113

这是关于此的未解决问题:

https://github.com/EventStore/eventstore-docker/issues/6

这似乎是 EventStore 所做的内部检查,因此很难从服务器代码外部解决。

于 2017-06-27T01:57:39.567 回答
0

现在可以设置EVENTSTORE_EXT_HTTP_PORT环境变量来告诉 eventstore 端口映射是如何完成的。例如如果EVENTSTORE_EXT_HTTP_PORT有值52040,那么端口映射应该是-p 52040:2113

您可以通过 eventstore 的文档找到更多信息: https ://eventstore.com/docs/server/command-line-arguments/#interface-options

我对其进行了测试,docker run eventstore/eventstore -e EVENTSTORE_EXT_HTTP_PORT=52040 -p 52040:2113并能够通过 port 到达接口52040

于 2020-05-20T16:27:38.627 回答