《Linux设置定时任务》一文中学习了crontab的使用方法,但是同样的配置方法,在Docker中是不会生效的。因为Docker中默认只会启动一个进程,crond并不会启动。本文研究一下在Docker中配置定时任务的方法,踩踩坑。

启动crond

要想在容器中使用定时任务,有三个办法:

把crond作为一号进程启动。

supervisor作为一号进程启动,使用supervisor启动crond。

进入容器手动启动crond。

本文使用第一个方法启动crond,启动命令为:

报错没有这个文件,这是因为没有打开rsyslog。

crond启动后,其他的配置参考《Linux设置定时任务》即可。