O serviço não está iniciando nem mesmo com ./launcher start app.
Estou recebendo um erro relacionado ao mac-address e não há um endereço MAC na linha de comando:
# ./launcher start app
x86_64 arch detected.
+ /data/docker-discourse/docker run --shm-size=512m -d --restart=always -h myhost-app -e DOCKER_HOST_IP=172.17.0.1 --name app -t --mac-address local_discourse/app /sbin/boot
docker: local_discourse/app is not a valid mac address.
See 'docker run --help'.
Com certeza, copiei abaixo o conteúdo de containers/app.yml após substituir algumas informações confidenciais por xxxxx.
## este é o template de contêiner Discourse tudo-em-um, autônomo
##
## 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"
- "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 contêiner deve expor?
## Se você quiser que o Discourse compartilhe uma porta com outro servidor web como Apache ou nginx,
## veja https://meta.discourse.org/t/17247 para detalhes
expose:
- "127.0.0.1:8009: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: "4096MB"
## pode melhorar o desempenho da classificação, mas adiciona uso de memória por conexão
#db_work_mem: "40MB"
## Qual revisão Git este contêiner deve usar? (padrão: tests-passed)
#version: tests-passed
env:
LANG: 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: 8
## TODO: O nome de domínio que esta instância do Discourse responderá
## Obrigatório. Discourse não funcionará com um número IP puro.
DISCOURSE_HOSTNAME: discourse.xxxxxxxxx.xxx
## Descomente se você quiser que o contêiner seja iniciado com o mesmo
## nome de host (-h option) especificado acima (padrão "$hostname-$config")
#DOCKER_USE_HOSTNAME: true
## TODO: Lista de e-mails separados por vírgula que se tornarão administradores e desenvolvedores
## na inscrição inicial, exemplo 'user1@example.com,user2@example.com'
DISCOURSE_DEVELOPER_EMAILS: 'contact@xxxxxxxxx.xxx'
## 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 necessários
# AVISO o caractere '#' na senha SMTP pode causar problemas!
DISCOURSE_SMTP_ADDRESS: mail.xxxxxxxxx.xxx
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: contact@xxxxxxxxx.xxx
DISCOURSE_SMTP_PASSWORD: "xxxxxxxxxxxx"
#DISCOURSE_SMTP_ENABLE_START_TLS: true # (opcional, padrão true)
## 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
## O contêiner Docker é sem estado; todos os dados são armazenados em /shared
volumes:
- volume:
host: /data/hosting/data-discourse
guest: /shared
- volume:
host: /data/hosting/data-discourse/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 seu primeiro registro, descomente e altere:
## Após receber o primeiro e-mail de inscrição, comente a linha novamente. Ela só precisa ser executada uma vez.
#- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"
- exec: echo "Fim dos comandos personalizados"
Você está executando um proxy reverso extra no host? Nesse caso, você pode preferir escutar em um socket Unix adicionando um web.socketed.template.yml na lista de templates no topo.
Eu alterei o expose e o rebuild, mas o problema persiste.
Estou executando o Haproxy como um proxy reverso para lidar com a conexão HTTPS para o Discourse. Ele está funcionando como está há mais de 2 anos, com várias atualizações já realizadas.