Olá, gostaria de saber a diferença do CMD e do ENTRYPOINT. Qual ocasião devo usar um ou outro?
Olá, gostaria de saber a diferença do CMD e do ENTRYPOINT. Qual ocasião devo usar um ou outro?
Oi, Gabriel, tudo bem?
A instrução CMD permite definir um comando padrão, que será executado apenas quando você executar o contêiner sem especificar um comando. Se o contêiner do Docker for executado com um comando, o comando padrão será ignorado. Se o Dockerfile tiver mais de uma instrução CMD, todas as instruções, exceto a última, serão ignoradas.
Já a instrução ENTRYPOINT permite configurar um contêiner que será executado como um executável. É semelhante ao CMD, porque também permite especificar um comando com parâmetros. A diferença é o comando ENTRYPOINT e os parâmetros não são ignorados quando o contêiner do Docker é executado com os parâmetros da linha de comando. (Existe uma maneira de ignorar ENTTRYPOINT, mas é improvável que você o faça.)
Espero ter te ajudado!
Eu li que se executar a aplicação com CMD e por algum motivo essa aplicação morrer, o contêiner continua suspenso, mas no caso de ENTRYPOINT o contêiner morrer junto com a aplicação. É verdade ?