美文网首页
Docker容器内运行定时任务crontab

Docker容器内运行定时任务crontab

作者: 孤远 | 来源:发表于2019-02-07 17:25 被阅读0次

基础镜像: centos

容器启动时执行

/usr/sbin/crond -i(后台执行)

即可。

对,就这么简单。

定义cron job有两种方式:

1、使用命令crontab -e;

2、vim编辑/etc/crontab;

其中,前者是在当前用户下的定时任务,不用加用户,后者只有root才可以编辑,需要多指定一个执行用户。

题外话,有人用systemctl start crond.service,来启动crond,这里有一个巨大的冲突,就是systemctl依赖initd进程,Linux操作系统的initd进程必须占用1号进程,而docker的启动脚本也是1号进程,虽然这个冲突可以通过/usr/sbin/systemd --system来避免,但执行systemctl命令还是可能有操作权限的问题,因此,直接启动crond即可。

相关文章

网友评论

      本文标题:Docker容器内运行定时任务crontab

      本文链接:https://www.haomeiwen.com/subject/okkgsqtx.html