1
resposta

Reiniciar Nginx/PHP-FPM pelo Dockerfile

Olá galera, boa tarde

Estou começando com docker estou com algumas dificuldades. Estou rodando alguns comandos para restartar o nginx e o php-fpm porém os comando não são executados. Quando acesso o contêiner eles não estão rodando

./Dockerfile

RUN /etc/init.d/nginx restart
RUN /etc/init.d/php7.2-fpm restart

ou

CMD ["/etc/init.d/nginx",  "restart"]
CMD ["/etc/init.d/php7.2-fpm",  "restart"]

Quando executo dentro do contêiner funciona normalmente.

1 resposta

Oi Felipe, tudo bom?

O comando de RUN no processo do docker é executado apenas na etapa de build. Ou seja, nesse momento seu container não está pronto para rodar o comando do nginx e do php FPM ainda.

Porém, o CMD deveria funcionar já que é executado pós build.

Eu tenho uma API open source no git que usa docker e docker-compose para gerenciar o build. Da uma olhada no Dockerfile do PHP:

https://github.com/andrechavesg/babi-api-horoscopo/blob/master/.docker/php/Dockerfile

Essa configuração usa exatamente o cenário do PHP com PHP-FPM em proxy executando o PHP-FPM com o CMD do docker =)

Se você quiser, compartilha com a gente seu Dockerfile todo, assim consigo rodar aqui pra garantir também.

Qualquer dúvida é só falar.

Abraço