S3, Assets & CDN Error

,

Hola, tengo un problema extraño con: S3 (DigitalOcean), Assets (sobre S3) y CDN Endpoint.

Descripción del problema:

En caso de error, solo veo la animación de carga y los errores se muestran como en la imagen a continuación:

Este es el esquema de error:

/ CDN Endpoint Endpoint “normal”
DISCOURSE_S3_BUCKET CONFIGURADO :x: Pic1 :white_check_mark:
DISCOURSE_S3_BUCKET NO CONFIGURADO :white_check_mark: :white_check_mark:
  • CDN Endpoint: https://<bucket>.fra1.cdn.digitaloceanspaces.com
  • Endpoint “normal”: https://<bucket>.fra1.digitaloceanspaces.com

Configuración actual:

  DISCOURSE_USE_S3: true

  DISCOURSE_S3_ACCESS_KEY_ID: <token>
  DISCOURSE_S3_SECRET_ACCESS_KEY: <secret>
  DISCOURSE_S3_ENDPOINT: https://fra1.digitaloceanspaces.com
  DISCOURSE_S3_CDN_URL: https://<bucket>.fra1.cdn.digitaloceanspaces.com
  #DISCOURSE_S3_BUCKET: '<bucket>' # para assets
  DISCOURSE_S3_UPLOAD_BUCKET: '<bucket>'
  DISCOURSE_S3_REGION: fra1
  DISCOURSE_BACKUP_LOCATION: s3
  DISCOURSE_S3_BACKUP_BUCKET: '<bucket>/backups '
  DISCOURSE_S3_INSTALL_CORS_RULE: false

También he configurado el siguiente hook (si uso la variable DISCOURSE_S3_BUCKET):

hooks:
  after_assets_precompile:
    - exec:
        cd: $home
        cmd:
          - sudo -E -u discourse bundle exec rake s3:upload_assets

Solo encuentro el error con la combinación “correcta” de configuraciones. ¿Alguna idea? También puedo proporcionar más información si es necesario.

Necesitas una CDN diferente. Bunny.net es fácil.

2 Me gusta

Estoy de acuerdo en que Bunny funciona bien y es fácil de configurar.

Recientemente cambié de Stackpath (¡su precio de CDN se ha triplicado el año pasado :scream_cat:) a Bunny en mi foro.

Como beneficio adicional, también fue beneficioso para un usuario chino:

3 Me gusta

¡Gracias por la sugerencia!

Soy parte de un proyecto de código abierto y el tráfico actual no justificaría el uso de una CDN diferente :sweat_smile:. La razón por la que usamos DigitalOcean es que tienen un programa de patrocinio gratuito para proyectos de código abierto.

El caso es que ahora está funcionando de alguna manera con DO (las imágenes y los archivos subidos se sincronizan). Establecí DISCOURSE_S3_UPLOAD_BUCKET, pero no DISCOURSE_S3_BUCKET. ¿Puedes explicar un poco más “terriblemente roto”?

Lo molesto es:

  • comandos como rake uploads:s3_migration_status no funcionan, porque dependen de DISCOURSE_S3_BUCKET
  • No puedo usar la CDN para los activos