(SSL: erro:02001002:biblioteca do sistema:fopen:Arquivo ou diretório não encontrado:fopen('/var/dis (…)
Estou seguindo o guia, mas não consigo encontrar nada sobre esse erro.
(SSL: erro:02001002:biblioteca do sistema:fopen:Arquivo ou diretório não encontrado:fopen('/var/dis (…)
Estou seguindo o guia, mas não consigo encontrar nada sobre esse erro.
cd ssl: Arquivo ou diretório não encontrado
Olá @slivo,
Isso indica que sua configuração do Lets Encrypt não criou os certificados na última vez que você reconstruiu seu container.
Claro, tenho certeza de que você já sabia disso!
Tive uma instalação que falhou mais ou menos assim essa semana. Talvez você tente fazer um
./launcher rebuild app
Reconstruí novamente. Configurei de acordo com as diretrizes. SSL certificado definido (/etc/nginx/sites-enabled/discourse.conf), mas tenho um erro:
SSL: error:0909006C:PEM routines:get_name:no start line:Expecting: TRUSTED CERTIFICATE
Não consigo iniciar o nginx de forma alguma.
nginx.service: Processo de controle saiu, code=exited status=1
nginx.service: Falhou com resultado 'exit-code'.
Processo: 3840 ExecStop=/sbin/start-stop-daemon --quiet --stop --retry QUIT/5 --pidfile /run/nginx.pid (code=exited, status=0/SUCCESS)
Processo: 25108 ExecReload=/usr/sbin/nginx -g daemon on; master_process on; -s reload (code=exited, status=1/FAILURE)
// Falha ao iniciar um servidor web de alto desempenho e um servidor proxy reverso.
Olá @slivo
Obrigado pela atualização sobre a configuração disso.
Você está configurando o Discourse com a build padrão do Docker sem um proxy reverso externo ao container?
sim, e também estou usando este guia Run other websites on the same machine as Discourse
Olá @slivo
Naquele link acima, trata-se de um esboço para executar o Discourse em um contêiner Docker, expondo o aplicativo por meio de um socket UNIX para um proxy reverso.
Nesse caso, você NÃO deve habilitar o SSL no arquivo yml do contêiner; e DEVE configurar o SSL com o Let’s Encrypt usando o certbot fora do contêiner, apenas no proxy reverso.
A arquitetura geral de alto nível se parece com isto:
USUÁRIOS WEB <-- HTTPS --> PROXY REVERSO <-- HTTP --> CONTÊINER DOCKER
Por favor, poste seu arquivo yml, ocultando sua senha e endereços de e-mail com ‘x’; e vamos ver o que você está fazendo.
Obrigado.
Mas agora eu não entendo. Então, criei um novo certificado usando o certbot. E eu o tenho aqui como:
/etc/letsencrypt/live/myadress.com/fullchain.pem
Seu arquivo de chave foi salvo em:
/etc/letsencrypt/live/myadress.com/privkey.pem
Preciso alterar o endereço neste arquivo ou em /etc/nginx/sites-enabled/discourse.conf, ou estou fazendo tudo completamente errado?
Olá @slivo
Quando você estiver configurando um proxy reverso na frente de outro aplicativo com uma instância do nginx: você deve ser muito específico sobre a localização dos arquivos de configuração, dentro ou fora do container?
Não sei se entendi completamente. Eu só quero um Discourse atrás do nginx. Não tenho outro aplicativo no servidor, mas quero fazer isso para ter mais proteção contra o exterior.
Olá @slivo,
Entendo sua frustração. Deixe-me explicar com gentileza.
Em uma de suas mensagens acima, você diz:
/etc/letsencrypt/live/myadress.com/fullchain.pem
Seu arquivo de chave foi salvo em:
/etc/letsencrypt/live/myadress.com/privkey.pem
Você não mencionou se está dentro do contêiner Docker ou fora dele.
Como você sabe, o nginx (no seu caso) está sendo executado tanto diretamente no host quanto dentro do aplicativo (o contêiner Docker).
Quando você postou:
/etc/letsencrypt/live/myadress.com/fullchain.pem
Seu arquivo de chave foi salvo em:
/etc/letsencrypt/live/myadress.com/privkey.pem
Como podemos, como pessoas de fora, saber exatamente a que você se refere se não fornecer todas as informações? Essa configuração está dentro ou fora do contêiner? Podemos “adivinhar” e “assumir” que você está falando do ambiente externo ao contêiner, mas como você não fornece esses detalhes, não podemos ter certeza. Minha experiência é que o caminho mais curto entre um problema e sua solução é nunca assumir nada e prestar muita atenção aos detalhes.
Além disso, você não postou seu arquivo yml. Também não postou seus arquivos de configuração do nginx fora do contêiner. Portanto, não conseguimos “ver” o que você está realmente fazendo na sua configuração.
Espero que isso ajude.