单个 droplet 上的多个 discourse 安装

尊敬的工单支持团队:

我已按照官方指南在 DigitalOcean 的 CentOS Droplet 上安装了 Discourse,目前运行正常。随后,我创建了第二个名为 discourse2.yml 的配置文件,并在新端口上配置了新的域名和 SMTP 设置。该应用已成功完成引导(bootstraped app)并启动(start app),但我无法通过主机名访问它。

Nginx 已安装在 3200 端口(运行正常)。
app.yml 映射了 8080:80 端口用于 HTTP(运行正常)。
discourse2.yml 映射了 8081:80 端口用于 HTTP(无法通过主机名访问)。

能否有人协助我配置 discourse2.yml,以便我能够通过添加到 discourse2.yml 文件中的主机名访问它?

Docker 进程信息如下:
1213 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
2634 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 443 -container-ip 172.17.0.3 -container-port 443
2645 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 80 -container-ip 172.17.0.3 -container-port 80
7448 /usr/bin/docker-proxy -proto tcp -host-ip 127.0.0.1 -host-port 4000 -container-ip 172.17.0.2 -container-port 80
7459 /usr/bin/docker-proxy -proto tcp -host-ip 0.0.0.0 -host-port 2222 -container-ip 172.17.0.2 -container-port 443

我不太明白需要在 Nginx 配置中添加什么内容,也不知道 Nginx 配置文件所在的目录在哪里。

Discourse 无法在非标准端口上运行。您需要配置一个外部 Nginx 反向代理,将流量转发到两个 Discourse 实例。相关指南可供参考。

你能告诉我如何吗?

例如:https://meta.discourse.org/t/running-other-websites-on-the-same-machine-as-discourse/17247。您的外部网站将是另一个 Discourse 站点。

您考虑过 Multisite configuration with Docker 吗?

如果您要部署多个 Discourse 实例,这可能是一个不错的选择。

2 个赞

感谢回复 @fzngagan,不过我认为 @riking指南 更适合我实现所需的目标,而且我已经成功完成了。谢谢 @pfaffman

1 个赞

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.