No se puede volver a hornear después de configurar CDN

I’m trying to setup S3 CDN, but when entering the app and rebaking, I get a large block of output following rake aborted!

I am running discourse from the Digital Ocean Marketplace App (docker). Here is what outputs:

ActiveRecord::NoDatabaseError: FATAL:  Peer authentication failed for user "discourse"
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.5/lib/active_record/connection_adapters/postgresql_adapter.rb:50:in `rescue in postgresql_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.5/lib/active_record/connection_adapters/postgresql_adapter.rb:33:in `postgresql_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:887:in `new_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:931:in `checkout_new_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:910:in `try_to_checkout_new_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:871:in `acquire_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:593:in `checkout'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:437:in `connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:1119:in `retrieve_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.5/lib/active_record/connection_handling.rb:221:in `retrieve_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.5/lib/active_record/connection_handling.rb:189:in `connection'
/var/www/discourse/lib/site_settings/db_provider.rb:61:in `table_exists?'
/var/www/discourse/lib/site_settings/db_provider.rb:16:in `all'
/var/www/discourse/lib/site_settings/defaults_provider.rb:29:in `db_all'
/var/www/discourse/lib/site_setting_extension.rb:290:in `block in refresh!'
/var/www/discourse/lib/site_setting_extension.rb:287:in `synchronize'
/var/www/discourse/lib/site_setting_extension.rb:287:in `refresh!'
/var/www/discourse/lib/site_setting_extension.rb:522:in `block in setup_methods'
/var/www/discourse/config/initializers/004-message_bus.rb:120:in `<main>'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:59:in `load'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:59:in `load'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.5/lib/active_support/dependencies.rb:318:in `block in load'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.5/lib/active_support/dependencies.rb:291:in `load_dependency'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.5/lib/active_support/dependencies.rb:318:in `load'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/engine.rb:666:in `block in load_config_initializer'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.5/lib/active_support/notifications.rb:182:in `instrument'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/engine.rb:665:in `load_config_initializer'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/engine.rb:625:in `block (2 levels) in <class:Engine>'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/engine.rb:624:in `each'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/engine.rb:624:in `block in <class:Engine>'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/initializable.rb:32:in `instance_exec'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/initializable.rb:32:in `run'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/initializable.rb:61:in `block in run_initializers'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/initializable.rb:50:in `each'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/initializable.rb:50:in `tsort_each_child'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/initializable.rb:60:in `run_initializers'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/application.rb:363:in `initialize!'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/railtie.rb:190:in `public_send'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/railtie.rb:190:in `method_missing'
/var/www/discourse/config/environment.rb:7:in `<main>'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/zeitwerk-2.4.2/lib/zeitwerk/kernel.rb:34:in `require'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.5/lib/active_support/dependencies.rb:324:in `block in require'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.5/lib/active_support/dependencies.rb:291:in `load_dependency'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.5/lib/active_support/dependencies.rb:324:in `require'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/application.rb:339:in `require_environment!'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/application.rb:523:in `block in run_tasks_blocks'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rake-13.0.3/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:23:in `load'
/usr/local/bin/bundle:23:in `<main>'

Caused by:
PG::ConnectionBad: FATAL:  Peer authentication failed for user "discourse"
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/pg-1.2.3/lib/pg.rb:58:in `initialize'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/pg-1.2.3/lib/pg.rb:58:in `new'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/pg-1.2.3/lib/pg.rb:58:in `connect'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.5/lib/active_record/connection_adapters/postgresql_adapter.rb:46:in `postgresql_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:887:in `new_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:931:in `checkout_new_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:910:in `try_to_checkout_new_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:871:in `acquire_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:593:in `checkout'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:437:in `connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.5/lib/active_record/connection_adapters/abstract/connection_pool.rb:1119:in `retrieve_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.5/lib/active_record/connection_handling.rb:221:in `retrieve_connection'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activerecord-6.0.3.5/lib/active_record/connection_handling.rb:189:in `connection'
/var/www/discourse/lib/site_settings/db_provider.rb:61:in `table_exists?'
/var/www/discourse/lib/site_settings/db_provider.rb:16:in `all'
/var/www/discourse/lib/site_settings/defaults_provider.rb:29:in `db_all'
/var/www/discourse/lib/site_setting_extension.rb:290:in `block in refresh!'
/var/www/discourse/lib/site_setting_extension.rb:287:in `synchronize'
/var/www/discourse/lib/site_setting_extension.rb:287:in `refresh!'
/var/www/discourse/lib/site_setting_extension.rb:522:in `block in setup_methods'
/var/www/discourse/config/initializers/004-message_bus.rb:120:in `<main>'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:59:in `load'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:59:in `load'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.5/lib/active_support/dependencies.rb:318:in `block in load'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.5/lib/active_support/dependencies.rb:291:in `load_dependency'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.5/lib/active_support/dependencies.rb:318:in `load'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/engine.rb:666:in `block in load_config_initializer'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.5/lib/active_support/notifications.rb:182:in `instrument'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/engine.rb:665:in `load_config_initializer'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/engine.rb:625:in `block (2 levels) in <class:Engine>'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/engine.rb:624:in `each'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/engine.rb:624:in `block in <class:Engine>'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/initializable.rb:32:in `instance_exec'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/initializable.rb:32:in `run'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/initializable.rb:61:in `block in run_initializers'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/initializable.rb:50:in `each'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/initializable.rb:50:in `tsort_each_child'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/initializable.rb:60:in `run_initializers'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/application.rb:363:in `initialize!'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/railtie.rb:190:in `public_send'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/railtie.rb:190:in `method_missing'
/var/www/discourse/config/environment.rb:7:in `<main>'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `block in require_with_bootsnap_lfi'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/loaded_features_index.rb:92:in `register'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:22:in `require_with_bootsnap_lfi'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/bootsnap-1.7.2/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:31:in `require'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/zeitwerk-2.4.2/lib/zeitwerk/kernel.rb:34:in `require'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.5/lib/active_support/dependencies.rb:324:in `block in require'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.5/lib/active_support/dependencies.rb:291:in `load_dependency'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/activesupport-6.0.3.5/lib/active_support/dependencies.rb:324:in `require'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/application.rb:339:in `require_environment!'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/railties-6.0.3.5/lib/rails/application.rb:523:in `block in run_tasks_blocks'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rake-13.0.3/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:23:in `load'
/usr/local/bin/bundle:23:in `<main>'
Tasks: TOP => posts:rebake => environment
(See full trace by running task with --trace)

Al final, instalé una nueva instancia del entorno Docker proporcionado por Digital Ocean para probarlo y sigue mostrando el mismo error. Debo asumir que se trata de algo relacionado con la configuración del droplet de Digital Ocean. ¿Podría alguien ayudarme a resolver esto?

Recomendamos instalar siguiendo nuestra Instalación Estándar Oficial de Discourse.

Los paquetes de terceros que no son mantenidos por nosotros pueden fallar en cualquier momento y, como no tenemos idea de cómo están hechos, no podemos ofrecer soporte para ellos.

Estoy bastante seguro de que la distribución de Digital Ocean se extrae directamente del código fuente actual. Que yo sepa, no personalizan nada. Incluso se mencionan en la configuración oficial de GitHub. ¿Puedes ayudarme a solucionar este problema?

Si lees esa página más a fondo, verás que lo que recomendamos es usar un VPS de Digital Ocean con

la versión LTS actual soportada de Ubuntu Server

y no su

Dicho esto, si deseas depurar más, ¿lo estás ejecutando así?

root@falcoland:~# cd /var/discourse
root@falcoland:/var/discourse# ./launcher enter app
root@falcoland-app:/var/www/discourse# rake posts:rebake
Rebaking post markdown for 'default'
       31 / 31 (100.0%)
31 posts done!
--------------------------------------------------

?

La aplicación del mercado es simplemente un acceso directo para crear un nuevo VPS Droplet con el script de configuración de Docker de Discourse ejecutándose al iniciar sesión. Funciona con Ubuntu 20.04. No es diferente de una instalación compatible, según tengo entendido, solo más rápida si aún no tienes un Droplet configurado.

Y, sí, los comandos y directorios son los mismos. Pero produce el error que publiqué arriba.

Puedes intentar compartir el app.yml.

Mi mejor suposición es que falta la plantilla de postgres?

Aquí está el archivo app.yml. He ocultado mis nombres de host y direcciones de correo electrónico.

## esta es la plantilla de contenedor Docker Discourse todo-en-uno, independiente
##
## Después de realizar cambios en este archivo, DEBES reconstruir
## /var/discourse/launcher rebuild app
##
## ¡TEN *MUCHO* CUIDADO AL EDITAR!
## ¡LOS ARCHIVOS YAML SON SUPER SUPER SENSIBLES A ERRORES EN LOS ESPACIOS EN BLANCO O LA ALINEACIÓN!
## visita http://www.yamllint.com/ para validar este archivo según sea necesario

templates:
  - "templates/postgres.template.yml"
  - "templates/redis.template.yml"
  - "templates/web.template.yml"
  - "templates/web.ratelimited.template.yml"
## Descomenta estas dos líneas si deseas agregar Lets Encrypt (https)
  - "templates/web.ssl.template.yml"
  - "templates/web.letsencrypt.ssl.template.yml"

## ¿Qué puertos TCP/IP debe exponer este contenedor?
## Si deseas que Discourse comparta un puerto con otro servidor web como Apache o nginx,
## consulta https://meta.discourse.org/t/17247 para obtener detalles
expose:
  - "80:80"   # http
  - "443:443" # https

params:
  db_default_text_search_config: "pg_catalog.english"

  ## Establece db_shared_buffers en un máximo del 25% de la memoria total.
  ## se establecerá automáticamente durante el arranque según la RAM detectada, o puedes sobrescribirlo
  db_shared_buffers: "256MB"

  ## puede mejorar el rendimiento de clasificación, pero añade uso de memoria por conexión
  #db_work_mem: "40MB"

  ## ¿Qué revisión de Git debe usar este contenedor? (predeterminado: tests-passed)
  #version: tests-passed

env:
  LC_ALL: en_US.UTF-8
  LANG: en_US.UTF-8
  LANGUAGE: en_US.UTF-8
  # DISCOURSE_DEFAULT_LOCALE: en

  ## ¿Cuántas solicitudes web simultáneas se admiten? Depende de la memoria y los núcleos de CPU.
  ## se establecerá automáticamente durante el arranque según los CPUs detectados, o puedes sobrescribirlo
  UNICORN_WORKERS: 4

  ## TODO: El nombre de dominio al que responderá esta instancia de Discourse
  ## Obligatorio. Discourse no funcionará con una dirección IP desnuda.
  DISCOURSE_HOSTNAME: redacted

  ## Descomenta si deseas que el contenedor se inicie con el mismo
  ## nombre de host (opción -h) especificado anteriormente (predeterminado "$hostname-$config")
  #DOCKER_USE_HOSTNAME: true

  ## TODO: Lista de correos electrónicos separados por comas que serán administradores y desarrolladores
  ## en el registro inicial, ejemplo 'usuario1@ejemplo.com,usuario2@ejemplo.com'
  DISCOURSE_DEVELOPER_EMAILS: 'redacted'

  ## TODO: El servidor de correo SMTP utilizado para validar nuevas cuentas y enviar notificaciones
  # Se requieren la dirección SMTP, el nombre de usuario y la contraseña
  # ¡ADVERTENCIA: el carácter '#' en la contraseña SMTP puede causar problemas!
  DISCOURSE_SMTP_ADDRESS: redacted
  DISCOURSE_SMTP_PORT: 587
  DISCOURSE_SMTP_USER_NAME: redacted
  DISCOURSE_SMTP_PASSWORD: redacted
  #DISCOURSE_SMTP_ENABLE_START_TLS: true           # (opcional, predeterminado true)
  DISCOURSE_SMTP_DOMAIN: redacted
  DISCOURSE_NOTIFICATION_EMAIL: redacted

  ## Si agregaste la plantilla de Lets Encrypt, descomenta a continuación para obtener un certificado SSL gratuito
  LETSENCRYPT_ACCOUNT_EMAIL: me@example.com

  ## La dirección del CDN http o https para esta instancia de Discourse (configurada para obtener)
  ## consulta https://meta.discourse.org/t/14857 para obtener detalles
  #DISCOURSE_CDN_URL: https://discourse-cdn.ejemplo.com

  ## La clave de dirección IP de geolocalización de Maxmind para la búsqueda de direcciones IP
  ## consulta https://meta.discourse.org/t/-/137387/23 para obtener detalles
  #DISCOURSE_MAXMIND_LICENSE_KEY: 1234567890123456

## El contenedor Docker no tiene estado; todos los datos se almacenan en /shared
volumes:
  - volume:
      host: /var/discourse/shared/standalone
      guest: /shared
  - volume:
      host: /var/discourse/shared/standalone/log/var-log
      guest: /var/log

## Los plugins van aquí
## consulta https://meta.discourse.org/t/19157 para obtener detalles
hooks:
  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - git clone https://github.com/discourse/docker_manager.git

## Cualquier comando personalizado para ejecutar después de la compilación
run:
  - exec: echo "Inicio de comandos personalizados"
  ## Si deseas establecer la dirección de correo electrónico 'De' para tu primer registro, descomenta y cambia:
  ## Después de recibir el primer correo electrónico de registro, vuelve a comentar la línea. Solo necesita ejecutarse una vez.
  #- exec: rails r "SiteSetting.notification_email='info@sinconfigurar.discourse.org'"
  - exec: echo "Fin de comandos personalizados"

Descomenta esa línea y establece la URL del CDN.

Estoy utilizando la URL de CDN de S3 configurada a través de la interfaz gráfica. Descubrí que habilitar la CDN mediante la configuración de app.yml impedía que el foro se cargara.

No puedo imaginar por qué configurar el CDN en la interfaz de usuario podría causar el error que muestras en el post original.

No puedo imaginar por qué configurar el CDN en el archivo yml no funcionaría.

Mi mejor suposición es que tienes algo mal con el CDN y algo mal con tu configuración. Pero no lo sé.

Esto parece ser el mismo comportamiento que experimenté después de habilitar el CDN en el archivo yml:

https://meta.discourse.org/t/using-object-storage-for-uploads-s3-clones/148916/211

Sin embargo, no estoy seguro de entender la solución descrita.

En cuanto al fallo de rebake, realmente no he configurado mucho más allá del CDN y S3 para las cargas y copias de seguridad. He intentado empezar desde cero y experimento el mismo fallo de rebake después de habilitar el CDN.

Creo que deberías configurar el CDN en app.yml, tal como dijo @pfaffman.
Creo que si lo configuras en app.yml, será global. Así que funcionará después de rebake.
¿Qué CDN usas?

Uso Amazon CloudFront. Lo probaré después del trabajo, gracias.

Y asegúrate de consultar Configure an S3 compatible object storage provider for uploads y la sección after_assets_precompile.

Creo que solo quiere servir archivos a través de CDN y no usar almacenamiento de objetos. Pero quizás me equivoco.

@pfaffman tiene razón, también estoy usando almacenamiento de objetos S3. Revisaré mi configuración esta noche y me aseguraré de no haber omitido ningún paso al respecto. ¡Gracias!

Así que sí, me olvidé por completo de agregar la sección after_assets_precompile. Una vez que la agregué y ejecuté el rebuild, pude volver a generar las publicaciones. Ahora me enfrento a otro problema, pero ya lo publiqué en otro hilo. ¡Gracias a todos los que ayudaron!