Rebuild entra em um ciclo

Olá, peço desculpas antecipadamente, pois sou relativamente novo no Discourse.

Quando vou para o diretório /var/discourse/ para executar ./launcher rebuild app, tenho o seguinte loop postado abaixo.

Até agora, a interface gráfica está boa e posso executar atualizações por lá.

Tentei algumas pesquisas no Google e encontrei este tópico descrevendo uma solução. Minha pergunta é: posso usar também os comandos git stash e git pull para resolver meu problema com a linha de comando?

Garantindo que o launcher esteja atualizado

Atualizando o Launcher…

Atualizando a1d8d0b..69d7558

erro: Suas alterações locais nos seguintes arquivos seriam substituídas pela mesclagem:

templates/web.ssl.template.yml

Por favor, confirme suas alterações ou armazene-as antes de mesclar.

Abortando

falha ao atualizar

Launcher atualizado, reiniciando…

arquitetura x86_64 detectada.

Garantindo que o launcher esteja atualizado

Atualizando o Launcher…

Atualizando a1d8d0b..69d7558

erro: Suas alterações locais nos seguintes arquivos seriam substituídas pela mesclagem:

templates/web.ssl.template.yml

Por favor, confirme suas alterações ou armazene-as antes de mesclar.

Abortando

falha ao atualizar

Launcher atualizado, reiniciando…

2 curtidas

Renomeie template/web.ssl.template.yml para outro nome (templates/my-web.ssl.template.yml) e use-o na seção templates: de containers/app.yml.

Restaure seu conteúdo original com

git restore templates/web.ssl.template.yml
4 curtidas

E (provavelmente) uma solução melhor a longo prazo seria adicionar essas alterações ao seu app.yml ou colocar seu template em algum lugar fora da árvore /var/discourse

3 curtidas

Obrigado, eu acabei alterando este arquivo para adicionar um certificado de cliente adicional para alguma criptografia extra entre o servidor e o Cloudflare.

Se eu seguir o procedimento para restaurar o arquivo template.yml, executarei uma reconstrução para ver se isso resolve meu problema de loop. Posso fazer as mesmas alterações mais uma vez sem muitos problemas? Ou isso acontecerá em algum momento no futuro e terei que fazer o mesmo procedimento?

Eu salvei meu template original como .bak para ter a oportunidade de ver a alteração.

1 curtida

Ah, obrigado, acho que você já respondeu à minha pergunta de acompanhamento!

1 curtida

Praticamente. :slight_smile:

Aqui está outra dica:

Bem, isso não é uma dica tão boa quanto eu esperava. . .. Dê uma olhada nas alterações feitas em Setup Multisite Configuration with Let's Encrypt and no Reverse Proxy

3 curtidas

Como estou agora, não acho que consigo resolver isso sozinho. Segui as instruções para uma instalação padrão do DigitalOcean.

Meu processo de pensamento original foi estudar o arquivo app.yml, o que me levou ao arquivo web.ssl.template.yml para começar.

Eu queria incluir um arquivo crt do Cloudflare para segurança adicional.

Eu revisei o arquivo web.ssl.template.yml e fiz uma alteração nesta seção:

ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
ssl_prefer_server_ciphers off;

   ssl_certificate /shared/ssl/ssl.crt;
   ssl_certificate_key /shared/ssl/ssl.key;
    ssl_client_certificate /shared/ssl/cloudflare.crt;
    ssl_verify_client on;

   ssl_session_tickets off;
   ssl_session_timeout 1d;
   ssl_session_cache shared:SSL:1m;

Eu coloquei o arquivo cloudflare.crt no diretório /var/discourse/shared/standalone/ssl e, pelo que pude verificar, tudo funcionou como eu pretendia.

Existe algum recurso que eu possa consultar para fazer o mesmo com alterações no arquivo app.yml?

A maioria das pessoas não usa mais certificados personalizados. Não tenho certeza se há um bom motivo para fazer o que você está pedindo, mas você pode ver Allow SSL / HTTPS for your Discourse Docker setup

Acho que você só quer desativar a nuvem laranja, obter um certificado lets encrypt e ativar a nuvem laranja. Você também quer usar o template do cloudflare.

Veja Using Discourse with Cloudflare: Best Practices

1 curtida

Hm. Não vejo nenhuma preocupação em usar arquivos próprios no diretório templates, desde que seus nomes não entrem em conflito com os templates fornecidos pelo discourse. Acho que é uma maneira conveniente de compartilhar partes da configuração entre os servidores de staging e produção, por exemplo.

3 curtidas

Obrigado a @thoka e @pfaffman pelo tempo e pelas respostas.

Desde então, realizei o git restore.

Como Jay apontou que as pessoas geralmente não usam mais certificados personalizados, suponho que, neste momento, eu também não vejo uma necessidade urgente para isso.

Executei outro ./launcher rebuild app e o launcher funcionou sem problemas.

Como observação, simplesmente inseri o template do Cloudflare na parte inferior do app.yml conforme instruído, mas o launcher apresentou um erro de sintaxe. Removi-o e tudo ficou bem. Nunca tive um problema usando o Cloudflare sem o template do Cloudflare, então continuarei assim.

1 curtida

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.