nginx expira no início

1

Instalei nginx usando essa entrada sources.list.d :

deb http://nginx.org/packages/ubuntu/ xenial nginx
deb-src http://nginx.org/packages/ubuntu/ xenial nginx

A versão nginx é 1.12.2-1~xenial . O servidor está executando o Ubuntu 16.04 LTS, com o kernel 4.4.0-36-generic .

Meu problema é que o daemon nginx falha ao iniciar:

$ sudo systemctl start nginx
Job for nginx.service failed because a timeout was exceeded. See "systemctl status nginx.service" and "journalctl -xe" for details.

Infelizmente, esses registros não fornecem muita informação:

$ sudo journalctl -xe
Feb 05 10:43:50 SERVERNAME nginx[17035]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
Feb 05 10:43:50 SERVERNAME nginx[17035]: nginx: configuration file /etc/nginx/nginx.conf test is successful
Feb 05 10:45:21 SERVERNAME systemd[1]: nginx.service: Start operation timed out. Terminating.
Feb 05 10:45:21 SERVERNAME systemd[1]: Failed to start nginx - high performance web server.
-- Subject: Unit nginx.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit nginx.service has failed.
--
-- The result is failed.
Feb 05 10:45:21 SERVERNAME systemd[1]: nginx.service: Unit entered failed state.
Feb 05 10:45:21 SERVERNAME systemd[1]: nginx.service: Failed with result 'timeout'.

Pelo que eu sei, o nginx realmente inicia corretamente . É como se o processo pai não recebesse a mensagem "Sou iniciado" do (s) processo (s) filho (s) corretamente como sendo o problema. Quando ele está em execução (systemd esperando que ele inicie), posso curvar com sucesso assim:

$ curl http://localhost:8000
<html>
<head><title>301 Moved Permanently</title></head>
<body bgcolor="white">
<center><h1>301 Moved Permanently</h1></center>
<hr><center>nginx/1.12.2</center>
</body>
</html>

Eu me sinto perdido com isso, além de talvez testar outra versão nginx ou algo assim. Alguma ideia? Eu poderia reiniciar o servidor, mas parece bobo em um servidor Linux.

Atualização 9:56 UTC: Testado com 1.13.8-1~xenial , mesmo problema.

    
por Per Lundberg 05.02.2018 / 10:51

1 resposta

2

Eu finalmente encontrei o problema, este foi um bobo ...

Eu tinha começado minha configuração de nginx copiando as configurações de um contêiner do Docker, que tinha essa configuração em nginx configuration:

daemon off;

Isso foi no cenário do Docker (onde o processo nginx estava sendo executado com runit , ou seja, nenhum initsystemd -style estava controlando-o.) Ele teve o efeito que nginx nunca daemonizaria e retornar o controle para systemd - > ele seria tratado como "expirado com problema desconhecido" e systemd o mataria.

Então, isso acabou sendo um erro de configuração simples. Eu queria postar aqui, já que isso pode ajudar outras pessoas que também cometem esse erro desajeitado. : -)

Detalhes completos sobre esta palavra-chave: link

    
por 05.02.2018 / 11:14