É possível executar o Discourse em modo headless, ou seja, sem o frontend Ember?
Reclassificando para #instalação, pois isso definitivamente não é uma pergunta frequente.
Você poderia detalhar melhor seu caso de uso?
Temos um frontend em React consumindo a API do Discourse. Também temos nosso próprio plugin que estende recursos do Discourse para alguns casos de uso específicos.
Se os usuários visitarem nossa URL ‘API’, atualmente eles veem o frontend Ember do Discourse sem marcação. Idealmente, gostaríamos de desativar isso.
Eu configuraria meu aplicativo personalizado para definir um cabeçalho personalizado ao chamar a API do Discourse e adicionaria uma pequena regra no nginx interno do Discourse para retornar 403 para todas as requisições sem o cabeçalho especial.
Obrigado pela sugestão, @Falco. Qual seria a melhor maneira de fazer isso mantendo o uso das imagens oficiais do Docker do Discourse?
Você pode fazer a manipulação necessária no seu arquivo app.yml.
O arquivo app.yml que você tem agora deve terminar assim:
run:
- exec: echo "Beginning of custom commands"
## blablabla
- exec: echo "End of custom commands"
Você pode executar substituições no arquivo nginx, fazendo com que ele fique assim:
run:
- exec: echo "Beginning of custom commands"
## blablabla
- replace:
filename: "/etc/nginx/conf.d/discourse.conf"
from: "location @discourse {"
to: |
location @discourse {
add_header AAA bbb;
- exec: echo "End of custom commands"
Existem vários exemplos em discourse_docker/templates at master · discourse/discourse_docker · GitHub