安装指南是否应告知用户先运行 apt update 和 apt upgrade?

能否提供该失败的完整日志?我想追踪问题以便修复。

Desktop.zip (17.9 KB)

不,不是正在运行的站点日志,而是发生失败的重新构建日志。

您需要哪些文件?

它们不是文件,而是在重新构建期间输出到标准输出的内容。也就是在执行导致失败的重新构建时打印到终端的信息。

我需要重新开始整个流程才能获得那些日志。

我在这里问的第一个问题之一就是关于这个:Installation text location 我现在习惯把它复制粘贴到 OneNote 中。

如果您执行重建操作,会执行拉取,但引导操作不会。

谢谢。能否详细说明一下?

我之所以这样问,是因为我们在初始安装时不使用“rebuild”(我认为您所说的“bootstrap”指的就是这个)。我们后续会使用“rebuild”,但此时会自动执行“git pull”。在那组三个命令中,如果必须执行“git pull”,我就无法正常工作了。

cd /var/discourse
git pull
./launcher rebuild app

./discourse-setup

完成所有设置

是否在任何时候都有必要在初始安装或后续重建时输入 git pull

在初次安装时,您无需执行 git pull,因为您刚刚克隆了仓库。git pull 用于拉取 Discourse 的更新版本。

如果是初次安装且您正在使用 discourse-setup,它会自动执行重建操作(该操作会执行 git pull),但除非在您运行 discourse-setup 期间有新的提交被推送,否则通常不会有任何变化。

那么,我们是否同意,在指令中的三个命令里,git pull 命令从来都不是必需的?我指的是这部分:

或者,您可以 SSH 登录到您的服务器并使用以下命令重建:

cd /var/discourse
git pull
./launcher rebuild app

我倾向于认为额外的 git pull 是_不必要的_,原因如下:

该代码似乎会检查本地版本,如果过时将更新并重启 launcher(以及执行其他多项操作)。

因此,在后续重建时,只需执行以下操作:

cd /var/discourse
./launcher rebuild app

而_无需_重复执行 git pull。

(注:深入源代码总是有益的,这样您可以更有把握。)
(注#2:我已删除了上面那条只会增加困惑的帖子。)

谢谢。我确信自己不知何故(来自论坛而非代码)已经说服了自己,于是搜索并找到了:

另外,看起来它基本上“一直”都是这样工作的:

我喜欢互联网上“远古时代”变成了约公元 2015 年 :slight_smile:

我想补充一点,这个特技的可行性并非一目了然:

基本上,脚本会检查自身是否“过时”,如果是,则更新自身(以及所有相关文件),然后再次调度自身。:tada: 巧妙 :nerd_face:

这也是一个在其他地方非常实用的模式……很棒!