如何更改独角兽的数量?

您好,

我想知道如何设置运行的独角兽数量。我需要它来调整 RAM 消耗,并且在此论坛和网络上都找不到任何具体信息。

我正在寻找诸如正确文件的位置、要更改的行的名称、是否需要采取任何预防措施等信息。

我猜想更改后,需要重新启动/重新构建软件。如何正确操作?

感谢您的时间。

1 个赞

要编辑这些设置,您可以编辑 app.yml

cd /var/discourse
nano containers/app.yml

大约在第 48 行,您应该看到:

## How many concurrent web requests are supported? Depends on memory and CPU cores.
  ## will be set automatically by bootstrap based on detected CPUs, or you can override
  UNICORN_WORKERS: 8

我不是这方面的专家,但您可能需要检查大约第 30 行以减少数量:

  ## Set db_shared_buffers to a max of 25% of the total memory.
  ## will be set automatically by bootstrap based on detected RAM, or you can override
  db_shared_buffers: "2048MB"

保存文件(通常按 CTRL+X 然后按 Y),然后您确实需要重建 discourse 以使用新设置,使用:

./launcher rebuild app

在此过程中,您的论坛将离线大约 10 分钟。

5 个赞

我认为,但我没有测试过,UNICORN_WORKERS 是在环境变量中设置的,而不是在任何配置文件中,所以你不需要重建,只需要

 ./launcher destroy app;./launcher start app

我很确定(但还没看)db_shared_buffers 的更改需要重建(或者你可以编辑容器内的相应设置文件然后重启它)。

2 个赞

我的 discourse 安装是通过 Yunohost 完成的,似乎有些地方不一样。我没能找到 app.yml 文件。

我正在等待 Yunohost 团队的答复。我会及时向您汇报。

1 个赞

我在 Yunohost 上自托管 Discourse 论坛时,遇到了 SMTP 电子邮件配置问题。在仔细查阅了 meta.discourse 文档后,我没有找到关于 Yunohost 特定操作或保存位置的信息。我卸载并重新安装了 Discourse,复制了日志文件,最终找到了包含 SMTP 信息的配置文件。

如果您也使用 Yunohost 并需要配置 Discourse 的 SMTP 设置,您可以在以下位置找到要修改的文件:

/var/www/discourse/config/discourse.conf

打开该文件,配置 SMTP 设置,保存并退出,然后使用命令“systemctl restart discourse”重新启动 Discourse。

root@yuno:~# nano /var/www/discourse/config/discourse.conf
root@yuno:~# systemctl restart discourse

如果这对其他人有帮助,因为我也找不到信息——

要使用 Office365 配置 Discourse,您需要执行以下操作:

  1. 转到您的 Microsoft 365 管理中心
  2. 点击“设置”,然后点击“域”
  3. 点击“添加域”
  4. 按照屏幕上的说明添加您论坛的 URL
  5. 完成上述步骤并验证 DNS 后,您就可以使用该子域创建一个收件箱了
  6. 点击“用户”,然后点击“活动用户”
  7. 点击“添加用户”
  8. 为您的论坛创建邮箱(例如:noreply@forum.yourlinks.com)邮箱域名必须与论坛运行的主机名匹配
  9. 点击“许可证和应用”
  10. 为此邮箱分配一个 Exchange Online (Plan 1) 许可证(每天 10,000 条消息,每分钟 30 条消息的限制)邮箱必须附加许可证才能用于 直接发送。撰写本文时,成本为每月 4.00 美元/月或 5.10 加元/月 | 如果您需要更高的限制或更短的节流,还有其他计划可用
  11. 点击“邮件”,然后点击“管理电子邮件应用”
  12. 启用“已验证的 SMTP”
  13. 点击“保存更改”
  14. 转到您的 Azure 门户
  15. 浏览到您的活动目录
  16. 在左侧边栏中选择“属性”,就在“用户设置”下方
  17. 选择“管理安全默认值”
  18. 将“安全默认值”设置为“已禁用”
  19. 点击“保存”
  20. 返回“用户”>“活动用户”
  21. 点击“多重身份验证”
  22. 禁用正在使用的邮箱上的 MFA

现在,就 Office365/Microsoft365 而言,您新创建的邮箱已准备好代表您的 Discourse 实例进行直接发送。

使用 Office365 邮箱的设置:
修改 /var/www/discourse/config/discourse.conf 中的这些行

# 运行论坛的主机名
hostname = "forum.yourlinks.com"

# 备份主机名,主要用于 CDN 使用
backup_hostname =

# 用于发送电子邮件的 SMTP 服务器地址
smtp_address = smtp.office365.com

# 用于发送电子邮件的 SMTP 服务器端口
smtp_port = 587

# 传递给 SMTP 服务器的域名
smtp_domain = forum.yourlinks.com

# SMTP 服务器的用户名
smtp_user_name = noreply@forum.yourlinks.com

# SMTP 服务器的密码
smtp_password = YourLinksPassWordHere

# SMTP 身份验证机制
smtp_authentication = login

# 为 SMTP 连接启用 TLS 加密
smtp_enable_start_tls = true

# 用于验证 SMTP 服务器证书的模式
# 要禁用,请设置为 'none'
smtp_openssl_verify_mode =

# 根据 RFC 8314 3.3 强制使用隐式 TLS
smtp_force_tls = false

# 在生产环境中加载 MiniProfiler,供开发人员使用
load_mini_profiler = false

# 运行论坛的主机名
hostname = "forum.yourlinks.com"