Eu escrevi este repositório reproduzível para executar um cron job com docker. Execute-o com o comando docker compose build && docker compose up
. Ele reinicia sozinho e não imprime 'Olá, mundo' a cada minuto conforme o esperado.
https://github.com/brunolnetto/cron-docker
Obrigado por todos os peixes!
O primeiro problema que você tem é que, para manter o
cron
comando em execução, você deve adicionar a-f
opção. Mas quando você faz isso, há algo estranho acontecendo, onde ele assume que ocrond
daemon está em execução e tenta encontrar o PID dele usando/var/run/crond.pid
. crond não está em execução, então ocron
comando falha.Depois de mexer no seu Dockerfile, criei este Dockerfile modificado que é executado.