gpt4 book ai didi

nginx - Dokku:从应用程序监听多个端口

转载 作者:IT老高 更新时间:2023-10-28 21:23:52 24 4
gpt4 key购买 nike

我正在使用 dokku 部署一个节点应用程序(使用 express js)。我的应用程序由 2 个 express js 应用程序组成,它们监听两个不同的端口。一个是主应用程序,另一个是 kue 的 Web 接口(interface) - 一个简单的 node js 作业队列。当我部署应用程序时,我需要运行这两个应用程序并在端口 80 上访问主应用程序,并在其他端口(最好是 express 应用程序监听的端口)上访问 kue。

我已将这两个应用程序都放在 Procfile 中,例如:

web: server=thats-wow NODE_ENV=production node server/app.js
worker: node server/kueUi.js

procfile 上的多个进程由 dokku-supervisord 插件处理:https://github.com/statianzo/dokku-supervisord (它支持所有进程类型:web、worker 等)。

对于第二个应用程序的进程类型,我已经尝试了“web”和“worker”。

问题

在部署时,Dokku 只是使 procfile 中指定的最后一个应用程序(在本例中为 kueUi)可通过端口 80 访问,并且似乎无法访问第一个指定的应用程序。我尝试通过第一个应用程序监听的端口访问,但这不起作用。

我猜它需要一些 nginx 配置来将某个端口上的请求转发到应用程序监听的 docker 容器中的那个端口。

我需要它如何

1. http://example.com - reaches my main app
2. http://example.com:5000 - reaches the second app (Kue UI)

找不到任何有关如何实现此目的的文档。非常感谢任何帮助!

最佳答案

这可以通过使用 https://github.com/statianzo/dokku-shoreman 一起破解。或 https://github.com/statianzo/dokku-supervisord ,但您需要手动确保在 dokku 主机上没有端口冲突。

https://github.com/progrium/dokku/issues/732已解决,您将能够将第二个应用程序部署为将监听 docker 分配的端口的工作人员。

关于nginx - Dokku:从应用程序监听多个端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25184496/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com