如何编辑生产服务器上的导入脚本?

如何直接编辑生产服务器上的 vanilla.rb?

我遇到了同样的错误,我对 Ruby 一无所知。

:wave:,如果您有标准安装,通常会这样做:

cd /var/discourse
./launcher enter app

cd script/import_scripts

然后您可以在此处编辑 vanilla.rb

1 个赞

是否有默认编辑器?因为 nano 和 vim 在启动器中无法运行。

您可以使用 apt update && apt install nano 来安装它;这应该会起作用。

2 个赞

欢迎您,Shin :slight_smile:

为了解您的导入情况,您是否正在遵循本指南(其中以 Vanilla 脚本为例)?

2 个赞

非常感谢。

每当我搜索论坛时,我都会找到这个指南:

1 个赞

非常感谢。我之前试过了,但不知何故现在它奏效了 :smiley:

3 个赞

也可以配置像 Visual Studio Code 这样的编辑器来连接到远程容器,并在此处编辑文件,对吧?通过 nano 等命令行工具编辑脚本可能会很快变得痛苦。

另外,我认为如果您重新构建映像,您修改的文件将被覆盖。

尽管进行了多次迁移,但我不太记得所有这些是如何工作的了。:sweat_smile:

2 个赞

是的,通过命令行工具修改文件确实相当麻烦。只是 Discourse 拥有管理良好社区所需的所有工具和功能。

我之前已经从多个论坛迁移过,但对 Ruby 一无所知。

如果它会覆盖文件,那么唯一的其他解决方案是在开发环境中创建插件吗?

大约 12 个月前,我处于完全相同的位置。我学习了足够的 Ruby 来修改 SMF 导入脚本,以迁移一个包含 700,000 篇帖子/8,000 名用户的论坛,并且自 3 月份迁移以来,我一直愉快地运行 Discourse。

所以你正在做的事情绝对是可行的,这里的支持将帮助你实现目标。

3 个赞

我想引用这个:

:slight_smile:

我也修改了用于迁移的 importers,而且我也不太懂 Ruby。

它根本不是一项强制技能。

关于如何编辑导入脚本……在我至少一次迁移过程中,我直接在容器中编辑了一些。那不是正确的方法,所以我不会推荐它,但如果你小心不丢失你的更改,那可以奏效。

3 个赞

这取决于需要修改什么。如果只是几个简单的更改,那么应该没问题。使用我找到的 SMF 导入脚本,它只为我做了一部分工作,所以我对其进行了大量修改,并重新运行了部分导入数十次,完整导入也进行了很多次。当你将新论坛内容与旧内容进行比较时,你会惊讶地发现有些东西并没有像你想象的那样奏效!我创建了几个脚本,可以删除之前的测试 Discourse 系统,安装一个新副本的 Discourse,然后使用最新版本的脚本开始另一次导入运行。

3 个赞