Descargar avatares localmente desde S3 (cerrando S3 en mi sitio)

¡Hola! He intentado durante días obtener la información que necesito buscando en Meta e Internet, pero sin éxito.

TL;DR

Voy a desactivar S3 debido a los costos. Me gustaría almacenar los avatares de los usuarios localmente para evitar que los usuarios pierdan sus avatares antes de apagar S3.

Antecedentes (resumen breve)

  • Tengo una comunidad de unos 5 años. Al principio almacenaba las imágenes localmente, y luego cambié a almacenarlas en S3.
  • Hoy tengo la aplicación Discourse en forum.example.com y la estoy migrando a example.com.
  • En el proceso, estoy reduciendo los altos costos (es una comunidad enorme), y el principal es S3. No nos importa perder el enlace a las imágenes subidas en las publicaciones, sin embargo, nos gustaría conservar los avatares de los usuarios.
  • Después de migrar el foro a example.com, intenté simplemente eliminar las credenciales de S3 para ver qué pasaba. Descubrí que algunos usuarios aún tenían sus avatares, mientras que otros no.

Así que ahora estoy luchando por cumplir los siguientes objetivos:

  1. Mantener los avatares de los usuarios después de desconectar S3.
  2. Deshabilitar la subida de imágenes al foro, pero permitir SOLO la subida de avatares.

Cualquier aporte, idea o ayuda será muy apreciada :heart:

Hay una tarea de rake que puedes buscar: Migración de cargas de S3 a local.

¿Acaso estás usando S3 sin un CDN? S3 no debería ser uno de los costos principales, a menos que sea una comunidad extremadamente atípica, si está configurada correctamente con un CDN que gestione todo el tráfico.

Buen punto. No, no estoy usando una CDN. Aparte de AWS, ¿hay alguna otra que sea comúnmente utilizada por la comunidad? Empezaré a revisarlas lo antes posible.

¡Gracias por compartirlo! Sin embargo, no sé cómo limitarlo solo a los avatares. Si descargo todas las imágenes de S3, necesitaría una hipoteca :stuck_out_tongue: