Olá,
Decidi deixar o phpbb algumas semanas atrás para o discourse.
Instalei-o em um Raspberry Pi com Ubuntu 22.04.
Após inúmeras tentativas para fazê-lo funcionar por trás do Apache, decidi usar o Nginx. (Preciso rodar vários sites pequenos no meu servidor…)
No entanto, seguindo este tutorial Execute outros sites na mesma máquina do Discourse
Recebo um erro de “Bad gateway” com o log do nginx me dando um
connect() to unix:/var/discourse/shared/standalone/nginx.http.sock failed (2: No such file or directory)
Não sou o primeiro a encontrar esse problema. Algumas threads são bem antigas, outras Nginx.http.sock nunca foi criado não receberam respostas adequadas.
Reiniciei o Nginx várias vezes (e o docker), vi em algum lugar que eu tinha que definir DOCKER_USE_HOSTNAME: true e fiz um chmod -R 777 em /var/discourse/shared/standalone.
Não sou o maior especialista, mas nos últimos 25 anos consegui rodar diferentes programas em servidores (sou bem novo em dockers), ficaria feliz em continuar assim se alguém pudesse ajudar.
Muito obrigado,
PS meu yml:
## este é o template do container Docker Discourse all-in-one, standalone
##
## Após fazer alterações neste arquivo, você DEVE reconstruir
## /var/discourse/launcher rebuild app
##
## TENHA MUITO CUIDADO AO EDITAR!
## ARQUIVOS YAML SÃO SUPER SUPER SENSÍVEIS A ERROS DE ESPAÇAMENTO OU ALINHAMENTO!
## visite http://www.yamllint.com/ para validar este arquivo conforme necessário
templates:
- "templates/postgres.template.yml"
- "templates/redis.template.yml"
- "templates/web.template.yml"
## Descomente a linha abaixo para habilitar o listener IPv6
#- "templates/web.ipv6.template.yml"
- "templates/web.ratelimited.template.yml"
## Descomente estas duas linhas se desejar adicionar Lets Encrypt (https)
- "templates/web.ssl.template.yml"
#- "templates/web.letsencrypt.ssl.template.yml"
## quais portas TCP/IP este container deve expor?
## Se você quer que o Discourse compartilhe uma porta com outro servidor web como Apache ou nginx,
## veja https://meta.discourse.org/t/17247 para detalhes
expose:
#- "8080:80" # http
#- "443:443" # https
params:
db_default_text_search_config: "pg_catalog.english"
## Defina db_shared_buffers para um máximo de 25% da memória total.
## será definido automaticamente pelo bootstrap com base na RAM detectada, ou você pode substituir
#db_shared_buffers: "256MB"
## pode melhorar o desempenho da ordenação, mas adiciona uso de memória por conexão
#db_work_mem: "40MB"
## Qual revisão Git este container deve usar? (padrão: tests-passed)
#version: tests-passed
env:
LC_ALL: en_US.UTF-8
LANG: en_US.UTF-8
LANGUAGE: en_US.UTF-8
# DISCOURSE_DEFAULT_LOCALE: en
## Quantas requisições web concorrentes são suportadas? Depende da memória e dos núcleos da CPU.
## será definido automaticamente pelo bootstrap com base nas CPUs detectadas, ou você pode substituir
#UNICORN_WORKERS: 3
## TODO: O nome de domínio que esta instância do Discourse responderá
## Obrigatório. O Discourse não funcionará com um número IP puro.
DISCOURSE_HOSTNAME: 'my.attented_adress.com'
## Descomente se você quiser que o container seja iniciado com o mesmo
## hostname (-h option) especificado acima (padrão "$hostname-$config")
DOCKER_USE_HOSTNAME: true
## TODO: Lista de emails separados por vírgula que serão feitos administradores e desenvolvedores
## na inscrição inicial, exemplo 'user1@example.com,user2@example.com'
DISCOURSE_DEVELOPER_EMAILS: 'myemail@adress.com'
## TODO: O servidor de e-mail SMTP usado para validar novas contas e enviar notificações
# ENDEREÇO SMTP, nome de usuário e senha são obrigatórios
# ATENÇÃO: o caractere '#' na senha SMTP pode causar problemas!
DISCOURSE_SMTP_ADDRESS: this_is_set
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: this_is_set
DISCOURSE_SMTP_PASSWORD: this_is_set
DISCOURSE_SMTP_ENABLE_START_TLS: true # (opcional, padrão true)
#DISCOURSE_SMTP_DOMAIN: discourse.example.com # (exigido por alguns provedores)
#DISCOURSE_NOTIFICATION_EMAIL: noreply@discourse.example.com # (endereço para enviar notificações)
## Se você adicionou o template Lets Encrypt, descomente abaixo para obter um certificado SSL gratuito
#LETSENCRYPT_ACCOUNT_EMAIL: me@example.com
## O endereço CDN http ou https para esta instância do Discourse (configurado para puxar)
## veja https://meta.discourse.org/t/14857 para detalhes
#DISCOURSE_CDN_URL: https://discourse-cdn.example.com
## A chave de endereço IP do Maxmind geolocation para consulta de endereço IP
## veja https://meta.discourse.org/t/-/137387/23 para detalhes
#DISCOURSE_MAXMIND_LICENSE_KEY: 1234567890123456
## O container Docker é stateless; todos os dados são armazenados em /shared
volumes:
- volume:
host: /var/discourse/shared/standalone
guest: /shared
- volume:
host: /var/discourse/shared/standalone/log/var-log
guest: /var/log
## Plugins vão aqui
## veja https://meta.discourse.org/t/19157 para detalhes
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/discourse/docker_manager.git
## Quaisquer comandos personalizados para executar após a construção
run:
- exec: echo "Início dos comandos personalizados"
## Se você quiser definir o endereço de e-mail 'De' para sua primeira inscrição, descomente e altere:
## Após receber o primeiro e-mail de inscrição, comente a linha novamente. Só precisa ser executado uma vez.
#- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"
- exec: echo "Fim dos comandos personalizados"