如何在 admin/settings/emails 中更改电子邮件地址?

在一位认证的 Discourse 支持人员帮助我们更换 Discourse 服务器后,Discourse 不再发送自动邮件。我检查了错误日志,它提示我联系 Sendingblue 激活 SMTP,我照做了(他们也激活了):

然而,仍然无法工作,所以我发现在 admin/settings/emails 下,列出的是 Discourse 支持人员的电子邮件而不是我的电子邮件:

我尝试联系这位支持人员将近两周,但他不回复我的电子邮件,我也无法通过他的任何平台联系到他。我该如何将他的电子邮件地址更改为我的?

非常感谢!
Wes

如果您的安装是标准的,该地址将在您的 app.yml 中设置。因此,您可以直接编辑 app.yml,或者再次运行 ./discourse-setup 以输入正确的 SMTP 详细信息。如果您查看您的邮件提供商,应该能找到您需要的用户名和密码详细信息。:+1:

如果您需要更多详细信息,请参阅指南的此部分

感谢您的回复,Jammy!我的控制台中没有 app.yml 文件,所以我猜我只能运行 discourse-setup 了。我一点技术都不懂,所以对于任何愚蠢的问题,我先表示歉意。但我希望确保我不会搞砸。

如果您运行 discourse-setup,正如您建议的那样,这会创建一个全新的安装,还是仅仅更改 SMTP 信息?我无法手动备份 Discourse,因为电子邮件功能不起作用。所以,您认为我敢在不先备份 Discourse 的情况下执行此操作吗?

如果 Jammy 不在,请随时回复,任何人……

我完全理解。:slightly_smiling_face: 与在管理员控制台中操作相比,进行后端操作确实会让人有点紧张。

只是想确认一下,您是否可以访问您的服务器(自托管),还是在使用托管服务提供商?如果您无法访问服务器,您可能需要联系托管您网站的人来做出这些更改。

如果您可以访问服务器,我认为更安全的选择是重新运行 ./discourse-setup,因为您在输入数据之外不太可能出现拼写错误。它不会重复您的实时实例,并且可以多次运行。:+1:

您还可以参考 Troubleshoot email on a new Discourse install 指南以获取更多信息。

如果您想谨慎行事,也可以从命令行进行备份。

您想在开始之前阅读一下这些内容,看看是否有任何问题吗?

2 个赞

谢谢你,Jammy。我还会回来的。现在有另一位技术支持代表正在处理。我会看看他能做什么。无论如何我都会回到这里。感谢你的帮助!

2 个赞

我以前从未做过这件事,所以请多包涵。我正试图使用您给我的链接进行备份:https://meta.discourse.org/t/backup-discourse-from-the-command-line/64364。

所以,我现在在 ./launcher (见图)。

这是上面链接中的内容:
进入容器:

./launcher enter app

运行备份:

discourse backup
exit

这将打印出备份的最终文件名。将备份和容器配置(如果需要)下载到您的本地机器:

scp root@69.55.54.86:/var/discourse/shared/standalone/backups/default/the-wes-penre-discussion-board-2022-03-15-152304-v20220228163400.tar.gz .
scp root@69.55.54.86:/var/discourse/containers/app.yml .

我不知道该怎么做。我已经打开了 launcher 窗口。接下来该怎么做?在哪里以及如何运行备份等等?

我恐怕对 WinSCP 不熟悉。我已经下载并设置好了,但要到晚些时候才能仔细查看。\n\n如果你能通过类似 Windows PowerShell 的工具 SSH 登录到你的服务器,或者如果你使用的是 Digital Ocean,可以使用“访问控制台”选项,我可能会更快地帮助你。:slightly_smiling_face:

是的,我在 Digital Ocean(以下简称 DO)中可以使用控制台选项。启动液滴控制台,它说……

太棒了。 :slightly_smiling_face::+1:

启动液滴控制台

然后 cd /var/discourse

然后 ./launcher enter app(给它一点时间)

接着是 discourse backup(这也可能需要一点时间才能生效)

完成后输入 exit


我认为现在你已经通过控制台而不是 WinSCP 完成了其中很多操作,这些操作的说明会更有意义。:crossed_fingers:

1 个赞

这似乎容易多了!现在,一切都很顺利,直到我输入 discourse backup。它说“命令未找到”。

而且我输入时 discoursebackup 之间有一个空格。

我本应该这样做:

我没有 data.yml 文件。

看起来您有一个双容器设置。

我来仔细检查一下我们要修改哪一个。

1 个赞

您需要执行以下操作:

cd /var/discourse
./launcher enter web_only
discourse  backup

当您使用 winSCP 获取数据时,您需要查找 /var/discourse/shared/web-only/backups/defau/t (除非它是 web_only,但我认为它在那里有一个破折号)。

在某个时候,您需要像这样重建数据容器:

./launcher rebuild data
./launcher bootstrap web_only && launcher destroy web_only; ./launcher start web_only

(如果您还没有从 Web 界面使用 docker_manager 更新容器,可以将 rebuild 替换为 stop,但引导通常不会造成任何损害。

重建还将确保您使用的是 main 而不是 master 分支,并执行 git pull

3 个赞

太棒了。谢谢你 @pfaffman :+1::slightly_smiling_face: 我恐怕还没有双容器设置的实际经验,所以看到你的头像在下面打字确实让我松了一口气。:slightly_smiling_face:

运行 ./discourse-setup --two-container 是否是双容器设置的替代方案?我不确定是否可以像常规设置那样多次运行它?

如果不行,更新 SMTP 详细信息是否是这个命令?

cd /var/discourse
nano containers/web_only.yml
1 个赞

不。但是,如果在安装后运行 discourse-setup,它会注意到是否有 web_only 并执行正确的操作 :tm:。(如果您同时拥有 app 和 web_only,它将忽略其中一个)。

1 个赞

太棒了!确实很棒。非常感谢你,Jay!它正在工作。它现在正在下载到我的电脑上。当没有设置电子邮件 smtp 时,这是一个很好的解决方法。

也谢谢你,Jammy!我在这里学到了新东西。我需要一次学习所有这些东西。Discourse 是一个很棒的程序,我喜欢它!我只需要了解它的内部工作原理。我仍然需要了解如何更改 smtp 的电子邮件地址,但我会遵循到目前为止收到的说明,如果我还有其他问题,我会回到这里……

2 个赞

以防万一在来回沟通中被忽略了,现在您有了备份,应该可以执行以下操作:

cd /var/discourse
./discourse-setup

并在其中的提示中填写您的 SMTP 详细信息。:+1:

1 个赞

只需运行 discourse-setup

2 个赞