Muito obrigado. Também descobri que alguns ativos estáticos (como CSS) são armazenados em /var/www/discourse/tmp/stylesheet-cache. No entanto, há dois outros problemas:
- Os usuários fazem upload de ativos, como avatares, que também são servidos pela CDN após configurar o DISCOURSE_CDN_URL. No entanto, enviar os ativos de upload para o GitHub sempre que um usuário fizer um upload não parece ser uma solução ideal.
- Quando o Discourse solicita um avatar de usuário, como
2_2.png, ele: 1) divide o nome do arquivo, 2) realiza algumas verificações e 3) calcula o nome real do arquivo usando hash. Se eu precisar servir o avatar do usuário, terei que implementar a mesma lógica, já que não existe um arquivo chamado2_2.png.
Minha solução final é simples. 1) Adicionei o Nginx antes do meu fórum, como nesta postagem. 2) Coletar todos os ativos estáticos do caminho acima e enviá-los para o GitHub. 3) No arquivo de configuração do Nginx, adicionei algumas regras como:
location ~/(stylesheets|assets) {
return 301 https://cdn.jsdelivr.net/gh/my_github/my_repo/$request_uri;
}
Obrigado novamente, @schleifer