Estoy intentando migrar todos los datos desde S3 de vuelta a mi servidor. Sin embargo, rake uploads:migrate_from_s3 devuelve el error Debes deshabilitar las subidas a S3 antes de ejecutar esa tarea. Así que desmarqué la opción habilitar subidas a S3 en la configuración de Discourse y también agregué DISCOURSE_USE_S3: false a mi archivo app.yml. Pero aún sin suerte, el mismo error.
¿Qué es una variable de entorno S3? En mi caso, DISCOURSE_USE_S3 se mantiene en env.
env:
LANG: en_US.UTF-8
# DISCOURSE_DEFAULT_LOCALE: en
UNICORN_WORKERS: 2
## TODO: El nombre de dominio al que responderá esta instancia de Discourse
DISCOURSE_HOSTNAME: engineersasylum.com
## Descomente si desea que el contenedor se inicie con el mismo
## nombre de host (opción -h) que se especifica arriba (predeterminado "$hostname-$config")
#DOCKER_USE_HOSTNAME: true
## TODO: Lista de correos electrónicos separados por comas que se convertirán en administradores y desarrolladores
## en el registro inicial, ejemplo 'user1@example.com,user2@example.com'
DISCOURSE_DEVELOPER_EMAILS: 'praveen369gen@gmail.com'
# Configuración de S3
DISCOURSE_USE_S3: false
DISCOURSE_S3_REGION: ap-south-1
DISCOURSE_S3_ACCESS_KEY_ID: AKxxxxxxxxxxxxxxxxxxxxxDQ
DISCOURSE_S3_SECRET_ACCESS_KEY: QWVxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxLigGs
DISCOURSE_S3_BUCKET: enginxxxxxxxxxxket
DISCOURSE_S3_BACKUP_BUCKET: enginxxxxxxxxxxxxcket
DISCOURSE_BACKUP_LOCATION: s3
… y no olvides, @Pravi, que debes reconstruir tu contenedor (aplicación) después de cambiar la mayoría de las variables en tu archivo yml. Algunas podrían cambiar simplemente deteniendo y volviendo a iniciar tu contenedor, pero cuando dudes, reconstruye el contenedor (aplicación) después de realizar un cambio en tu yml.
Agregué ‘local’ como ubicación de respaldo, luego reconstruí el contenedor e intenté migrar, pero sin éxito. Me está mostrando Debes deshabilitar las cargas a S3 antes de ejecutar esa tarea.
Después de reconstruir con DISCOURSE_USE_S3=false en el yml, ejecutaste la tarea rake y aún dice «Debes desactivar las cargas en S3». ¿Fuiste al panel de administración y desactivaste S3 allí también?
Sí, agregué DISCOURSE_USE_S3=false al app.yml, luego reconstruí el contenedor y ejecuté la tarea rake, pero sigue mostrando la misma salida. Sí, desactivé las cargas en la página de administración.
No entiendo cómo el último puede ser verdadero si configuraste la variable de entorno en falso y reconstruiste. Los de SiteSetting provienen de tu panel de administración y GlobalSettings se gestiona a través de app.yml.
Yo también lo intenté. Comenté todo excepto DISCOURSE_USE_S3: false y aparece el mismo error que antes.
root@ip-172-31-7-247-app:/var/www/discourse# rake uploads:migrate_from_s3
Migrando las cargas desde S3 al almacenamiento local para 'default'...
rake aborted!
NoMethodError: el método `downcase` no está definido para nil:NilClass
/var/www/discourse/app/models/global_setting.rb:107:in `s3_bucket_name'
/var/www/discourse/app/models/site_setting.rb:157:in `absolute_base_url'
/var/www/discourse/lib/tasks/uploads.rake:138:in `migrate_from_s3'
/var/www/discourse/lib/tasks/uploads.rake:118:in `block in migrate_all_from_s3'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/rails_multisite-2.3.0/lib/rails_multisite/connection_management.rb:68:in `with_connection'
/var/www/discourse/vendor/bundle/ruby/2.6.0/gems/rails_multisite-2.3.0/lib/rails_multisite/connection_management.rb:78:in `each_connection'
/var/www/discourse/lib/tasks/uploads.rake:118:in `migrate_all_from_s3'
/var/www/discourse/lib/tasks/uploads.rake:93:in `block in <main>'
/usr/local/bin/bundle:23:in `load'
/usr/local/bin/bundle:23:in `<main>'
Tareas: TOP => uploads:migrate_from_s3
(Véase el rastreo completo ejecutando la tarea con --trace)
Las configuraciones SiteSetting y GlobalSettings están deshabilitadas.