Auf neuen Host wiederherstellen

Ich habe einen neuen Host eingerichtet, um eine „Staging“-Umgebung zu haben. Ich habe die gleiche Discourse-Installation mit der exakt gleichen Version neu erstellt. Ich verwende Version: 2.8.2.

Erster Kommentar: Ab Version 2.8.2 ist die Größe meines Backups von 282 MB auf etwa 90 MB gesunken. Ich bin mir nicht sicher, warum, aber ich werde das einfach mit einigen intelligenten Informationen nutzen, die ich hinzugefügt habe.

Ich habe das neueste Archiv von meinem Forum heruntergeladen und in den lokalen Speicher der neuen Staging-Umgebung hochgeladen.

Die Wiederherstellung schlägt fehl aufgrund von:

[2022-02-27 19:41:18] ALTER TABLE
[2022-02-27 19:41:18] ALTER TABLE
[2022-02-27 19:41:18] Migrating the database...
[2022-02-27 19:43:00]
[2022-02-27 19:43:00] Reconnecting to the database...
[2022-02-27 19:43:00] Reloading site settings...
[2022-02-27 19:43:00] Disabling outgoing emails for non-staff users...
[2022-02-27 19:43:02] Disabling readonly mode...
[2022-02-27 19:43:02] Clearing category cache...
[2022-02-27 19:43:02] Reloading translations...
[2022-02-27 19:43:02] Remapping uploads...
[2022-02-27 19:43:02] Remapping 'https://forum.geekbeacon.org' to 'https://forum-staging.geekbeacon.org'
[2022-02-27 19:43:08] Restoring uploads, this may take a while...
[2022-02-27 19:43:36] EXCEPTION: 8 posts are not remapped to new S3 upload URL. S3 migration failed for db 'default'.
[2022-02-27 19:43:36] /var/www/discourse/lib/file_store/to_s3_migration.rb:132:in `raise_or_log'
/var/www/discourse/lib/file_store/to_s3_migration.rb:87:in `migration_successful?'
/var/www/discourse/lib/file_store/to_s3_migration.rb:373:in `migrate_to_s3'
/var/www/discourse/lib/file_store/to_s3_migration.rb:66:in `migrate'
/var/www/discourse/lib/file_store/s3_store.rb:317:in `copy_from'
/var/www/discourse/lib/backup_restore/uploads_restorer.rb:62:in `restore_uploads'
/var/www/discourse/lib/backup_restore/uploads_restorer.rb:44:in `restore'
/var/www/discourse/lib/backup_restore/restorer.rb:61:in `run'
/var/www/discourse/script/spawn_backup_restore.rb:23:in `restore'
/var/www/discourse/script/spawn_backup_restore.rb:36:in `block in <main>'
/var/www/discourse/script/spawn_backup_restore.rb:4:in `fork'
/var/www/discourse/script/spawn_backup_restore.rb:4:in `<main>'
[2022-02-27 19:43:36] Trying to rollback...
[2022-02-27 19:43:36] Rolling back...
[2022-02-27 19:43:36] Cleaning stuff up...
[2022-02-27 19:43:36] Dropping functions from the discourse_functions schema...
[2022-02-27 19:43:36] Removing tmp '/var/www/discourse/tmp/restores/default/2022-02-27-194051' directory...
[2022-02-27 19:43:36] Unpausing sidekiq...
[2022-02-27 19:43:36] Marking restore as finished...
[2022-02-27 19:43:36] Notifying 'csgeek' of the end of the restore...

1 „Gefällt mir“

[quote=„Samir_Faci, Beitrag:1, Thema:219515″]
EXCEPTION: 8 posts are not remapped to new S3 upload URL. S3 migration failed
[/quote]

Das ist Ihr Problem. Verwenden Sie vielleicht denselben S3-Bucket und denselben Bucket? Überprüfen Sie vielleicht, ob die versteckte Einstellung, die etwa „S3 im Backup herunterladen“ heißt, aktiviert ist. Sie müssen nach dem Namen der Einstellung suchen oder im Quellcode nachsehen.

Oder vielleicht müssen Sie überprüfen, ob die restlichen Uploads auf Ihrer Produktionsseite auf S3 sind.

1 „Gefällt mir“

Ich habe keine S3 konfiguriert. Ich vermute, dass der alte Server einige alte Daten hat, die nicht auf einen gültigen S3-Speicherort abgebildet wurden.

Ich bin zum älteren Server zurückgekehrt und habe 2 Buckets konfiguriert, 1 für Backups und 1 für Medien. Ich bin dem Leitfaden gefolgt und habe AWS S3 einschließlich des CDN eingerichtet.

Wenn ich rake uploads:migrate_to_s3 ausführe, was fehlschlug, habe ich danach posts:rebake ausgeführt und das scheint die Anzahl der Fehler reduziert zu haben, aber es schlägt immer noch fehl:

Bitte beachten Sie, dass die Migration zu S3 derzeit nicht rückgängig gemacht werden kann!
[CTRL+c] zum Abbrechen, [ENTER] zum Fortfahren

Hochladen von Uploads nach S3 für 'default'...
Dateien nach S3 hochladen...
 - Lokale Dateien auflisten
 => 208 Dateien
 - S3-Dateien auflisten
. => 978 Dateien
 - Dateien nach S3 synchronisieren
................................................................................................................................................................................................................
Aktualisieren der URLs in der Datenbank...
Alte optimierte Bilder entfernen...
Alle Beiträge mit Lightboxen zum erneuten Sichern markieren...
15 Beiträge wurden zum erneuten Sichern markiert
rake abgebrochen!
FileStore::ToS3MigrationError: 1 Beiträge sind nicht auf die neue S3-Upload-URL abgebildet. S3-Migration fehlgeschlagen für DB 'default'.
/var/www/discourse/lib/file_store/to_s3_migration.rb:132:in `raise_or_log'
/var/www/discourse/lib/file_store/to_s3_migration.rb:87:in `migration_successful?'
/var/www/discourse/lib/file_store/to_s3_migration.rb:373:in `migrate_to_s3'
/var/www/discourse/lib/file_store/to_s3_migration.rb:66:in `migrate'
/var/www/discourse/lib/tasks/uploads.rake:123:in `migrate_to_s3'
/var/www/discourse/lib/tasks/uploads.rake:102:in `block in migrate_to_s3_all_sites'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rails_multisite-4.0.0/lib/rails_multisite/connection_management.rb:80:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rails_multisite-4.0.0/lib/rails_multisite/connection_management.rb:90:in `each_connection'
/var/www/discourse/lib/tasks/uploads.rake:100:in `migrate_to_s3_all_sites'
/var/www/discourse/lib/tasks/uploads.rake:96:in `block in <main>'
/usr/local/bin/bundle:25:in `load'
/usr/local/bin/bundle:25:in `<main>'
Tasks: TOP => uploads:migrate_to_s3
(Vollständige Trace durch Ausführen der Aufgabe mit --trace anzeigen)

Gibt es eine Möglichkeit, migrate_to_s3 im ausführlichen Modus auszuführen, um den problematischen Beitrag zu identifizieren?