Baixar avatares localmente do S3 (desativando o S3 no meu site)

Olá! Tentei por dias obter as informações que preciso, pesquisando no Meta e na internet, sem sucesso.

TL;DR

Estou desativando o S3 devido aos custos. Gostaria de armazenar os avatares dos usuários localmente para evitar que eles percam seus avatares antes de desligar o S3.

Contexto (versão resumida)

  • Tenho uma comunidade com cerca de 5 anos. No início, armazenávamos imagens localmente e depois migramos para o S3.
  • Hoje, tenho o aplicativo Discourse em forum.example.com e estou migrando-o para example.com.
  • No processo, estou reduzindo os altos custos (é uma comunidade enorme), sendo o principal deles o S3. Não nos importa perder o link para as imagens enviadas nos posts, mas gostaríamos de manter os avatares dos usuários.
  • Após migrar o fórum para example.com, tentei apenas remover as credenciais do S3 para ver o que aconteceria. Percebi que parte dos usuários ainda tinha seus avatares, enquanto outros não.

Agora, estou lutando para atingir os seguintes objetivos:

  1. Manter os avatares dos usuários após a desconexão do S3.
  2. Desabilitar o envio de imagens para o fórum, mas permitir APENAS o envio de avatares.

Qualquer contribuição, ideia ou ajuda será muito apreciada :heart:

Existe uma tarefa rake que você pode pesquisar em Migrando uploads do S3 para local.

Será que você está usando o S3 sem uma CDN? O S3 não deveria ser um dos principais custos, a menos que seja uma comunidade extremamente atípica, se estiver configurado corretamente com uma CDN atendendo todo o tráfego.

Bom ponto. Não, não estou usando uma CDN. Além da AWS, existe alguma outra comumente usada pela comunidade? Vou começar a verificá-las o mais rápido possível.

Obrigado por compartilhar! No entanto, não sei como restringi-la apenas aos avatares. Se eu fizer um download de todas as imagens do S3, vou precisar de uma hipoteca :stuck_out_tongue: