我尝试将我的 Discourse 实例迁移到新服务器,但通过 UI 和 CLI 进行恢复的操作均失败。这与 S3 迁移有关。
我还在 Rails 控制台中启用了以下设置:
SiteSetting.migrate_to_new_scheme = true Jobs::MigrateUploadScheme.new.execute(nil)
失败的相关日志如下:
将 '//thinnal.s3.dualstack.us-east-1.amazonaws.com/' 重新映射为 '/uploads/default/'
incoming_emails=2
optimized_images=3851
post_revisions=86
posts=618
stylesheet_cache=10
topic_links=107
topics=150
uploads=419
user_histories=20
正在将上传文件迁移到 S3...
检查默认数据库是否已迁移...
1977 个上传文件中有 1971 个尚未迁移到 S3。数据库 'default' 的 S3 迁移失败。
266 篇帖子的上传链接未重新映射到新的 S3 上传 URL。数据库 'default' 的 S3 迁移失败。
正在默认数据库中查找缺失的上传文件
没有缺失的帖子上传文件。
无需重新烘焙任何帖子
正在将默认数据库的上传文件迁移到 S3...
部分上传文件未迁移到新方案。请在 Rails 控制台中运行以下命令:
SiteSetting.migrate_to_new_scheme = true
Jobs::MigrateUploadScheme.new.execute(nil)
恢复过程已取消!
正在尝试回滚...
正在回滚...
正在清理...
从 discourse_functions 架构中删除函数
正在删除临时目录 '/var/www/discourse/tmp/restores/default/2019-09-02-140750'...
正在取消暂停 Sidekiq...
标记恢复为已完成...
向 'system' 通知恢复结束...
完成!
[失败]
恢复完成。