A Scaleway mudou alguma coisa? Funcionava para mim até 48 horas atrás, mas não funciona mais.
Sua conta está paga? O que há de errado? Alguma imagem funciona? Todas sumiram ou você simplesmente não consegue adicionar novas?
Você pode adicionar um pouco mais de suporte? Por exemplo, o Tencent COS da China é mais conveniente para usuários chineses, e o COS da Tencent Cloud tem nós de CDN em todo o mundo, o que é muito rápido para acessar.
Você já tentou? Funciona?
Eu o usei no ambiente de teste, mas só consigo fazer backup para Tencent COS, e espero que a equipe oficial do Discourse possa adicionar suporte ao Tencent COS para facilitar os desenvolvedores da China.
Acho que você precisará compartilhar o que fez e quais erros ou problemas teve. Então, alguém poderá sugerir como fazer funcionar. Você pode olhar os outros exemplos e ver se consegue usá-los para fazer funcionar.
Acho improvável que façam alterações no núcleo para dar suporte a isso.
Backblaze:
- Configurei um bucket B2 na minha conta
- Adicionei os detalhes à seção
envdoapp.yml - Executei
./launcher rebuild app
…mas não vejo nenhuma confirmação no painel da minha instância do Discourse de que essas configurações entraram em vigor. Onde devo procurar?
Olá,
Consegui testar e usar com sucesso o Cloudflare R2 para uploads e backups. Post detalhado aqui Cloudflare R2: Navigating Setup and Handling Configuration Errors - #40 by kamaljain
Solicitaria que, por favor, testassem em seu ambiente e revisassem o status de "Funciona com Discourse" para "Sim" para o Cloudflare R2. Na verdade, é mais fácil que o S3 e mais econômico, gratuito se for inferior a 10 GB de armazenamento.
Eu também testei uma configuração em multisite e também acho que está funcionando.
Vi algo que me faz perguntar se você consegue obter uma lista de backups. Tentarei verificar minha configuração.
Oi mano, posso conversar com você? Estou com alguns problemas ao configurar o MinIO.
Obrigado.
Configuração do iDrive
Apenas queria relatar que usar a versão E2 do armazenamento s3 do iDrive funciona perfeitamente com estas configurações:
Configurações de ENV no arquivo yaml
Certifique-se de que seu bucket tenha pelo menos permissões Públicas e de Leitura nas configurações do iDrive.
Estas são as configurações que uso para um bucket compartilhando uploads e backups.
DISCOURSE_USE_S3: true
DISCOURSE_S3_REGION: sua-região
DISCOURSE_S3_ENDPOINT: https://seu-endpoint-idrive.dev
DISCOURSE_S3_ACCESS_KEY_ID: sua-chave-de-acesso
DISCOURSE_S3_SECRET_ACCESS_KEY: sua-chave-secreta
DISCOURSE_S3_CDN_URL: https://seu-cdn-personalizado.com/uploads
DISCOURSE_S3_BUCKET: seu-nome-de-bucket/uploads
DISCOURSE_S3_BACKUP_BUCKET: seu-nome-de-bucket/backups
DISCOURSE_BACKUP_LOCATION: s3
DISCOURSE_S3_INSTALL_CORS_RULE: false
Por padrão, o iDrive tem Compartilhar tudo nesta região com todas as origens… então deve funcionar imediatamente, independentemente das fontes. Bloqueie para seus próprios domínios, se desejar.
Eu uso um certificado de origem Cloudflare para criar um CNAME que aponta para o endpoint do iDrive.
Sincronizar Anexos Existentes
Reconstruir
Reconstrua o aplicativo após alterar essas configurações de ENV.
Carregar e Re-processar
Em seguida, entre no contêiner e execute
rake uploads:migrate_to_s3
Observe o upload, depois execute
rake posts:rebake_uncooked_posts
Saia do contêiner
Adicionar à seção hooks do arquivo yaml
Na seção hooks
after_assets_precompile:
- exec:
cd: $home
cmd:
- sudo -E -u discourse bundle exec rake s3:upload_assets
- sudo -E -u discourse bundle exec rake s3:expire_missing_assets
Isso garante que os arquivos js/css sejam enviados para o iDrive após seus anexos, caso contrário, você terá muitos erros no console do navegador, pois todos estarão faltando.
Reconstruir
Reconstrua novamente após o comando de assets ser executado.
Tudo deve ficar bem!
Talvez o serviço Hetzner Object Storage deva ser adicionado à tabela?
Consegui usar o Contabo para uploads de arquivos. Tanto arquivos antigos (migrados) quanto novos uploads funcionaram perfeitamente. No meu caso, a URL do bucket era https://eu2.contabostorage.com/mybucket.
O truque foi definir EU2 como o nome do bucket e https://contabostorage.com/mybucket como o endpoint.
O único problema é que, ao carregar o site, ele também solicita outros arquivos, como o js dos plugins, do bucket e eles não carregam por estarem indisponíveis. Bem, entendi que isso acontece porque defini a URL da CDN como a mesma do bucket. Isso ainda não está muito claro para mim, alguém pode me dizer como configurar? Pelo que entendi, tenho que criar um endereço cname que aponte para o domínio principal (servidor discourse) e proxy-lo com o cloudflare, isso está correto?
Você esqueceu desta parte:
Tenho certeza de que fiz isso, mas talvez tenha cometido um erro. No final, restaurei um backup, então estou indo um pouco de memória… Mas então, pergunto-me, por que é desaconselhável configurar um CDN como o Bucket? Que problemas isso pode causar? Tentarei novamente amanhã.
Obrigado
Eu não acho que o problema que você descreve seria porque você definiu a URL do CDN como a URL do bucket (ou seja, se os uploads funcionam, mas os ativos não).
Atualizarei você amanhã, obrigado
E funcionou ![]()
Passo a passo do que fiz esperando ajudar outros:
editei o app.yml e adicionei
after_assets_precompile:
- exec: cd: $home
cmd: - sudo -E -u discourse bundle exec rake s3:upload_assets
- sudo -E -u discourse bundle exec rake s3:expire_missing_assets
depois de hooks: (logo após git clone plugins…)
e
DISCOURSE_USE_S3: true
DISCOURSE_S3_REGION: EU
DISCOURSE_S3_ENDPOINT: https://contabostorage.com/bucketname
DISCOURSE_S3_ACCESS_KEY_ID: accesskey
DISCOURSE_S3_SECRET_ACCESS_KEY: secretaccesskey
DISCOURSE_S3_CDN_URL: https://eu2.contabostorage.com/randomlettersthatcontaboaddstothelinks:bucketname
DISCOURSE_S3_BUCKET: eu2
DISCOURSE_BACKUP_LOCATION: s3
DISCOURSE_S3_INSTALL_CORS_RULE: false
depois das configurações de e-mail
então defini os mesmos valores no menu do discourse e habilitei os uploads S3.
Reconstruí o app com
cd /var/discourse
sudo ./launcher rebuild app
então
./launcher enter app
rake uploads:migrate_to_s3
Isso leva um tempo, no meu caso algumas horas (80k arquivos, 100GB)
Quando terminar
rake posts:rebake_uncooked_posts
Atualização: alguns usuários não conseguiram carregar o site (recursos e arquivos). Descobrimos que o domínio contabostorage.com estava presente em algumas listas de bloqueio como um site de phishing. A solução foi simples:
configure um subdomínio files.mydomain.com como descrito aqui Can I Setup a Custom Domain for My Object Storage? : Contabo
Atualizado DISCOURSE_S3_CDN_URL: https://files.mydomain.com em app.yml
Em seguida
cd /var/discourse
sudo ./launcher rebuild app
e para completar o trabalho
./launcher enter app
rake posts:rebake
Agora todos os recursos e uploads são carregados de https://files.mydomain.com/pathtofile/file.ext
Feito
