环境,docker centos7.4docker
容器启动时注意两点centos
入口要设置/usr/sbin/init,而且配置主机彻底访问权限(--privileged)测试
(不然执行service的时候会出现Failed to get D-Bus connection: Operation not permitted)centos7
一、查看cron服务是否正常运行blog
service crond statuscrontab
若是service报命令找不到的错,执行 yum -y install initscriptsip
二、启动cron(设置为随容器启动)get
/usr/sbin/crond -i博客
三、重点坑1it
定时任务在vi /etc/crontab下设置(注意要指定用户名,修改无须重启),不要使用crontab -e(我试验设置是没有效果的)
四、重点坑2
要设置定时任务的user-name,在宿主机使用不设置也是正常的,docker容器里面就必需要设置了。稳妥起见,之后都统一设置吧
附上测试任务语句
*/1 * * * * root sh /root/test111.sh >> /root/testrsss.txt
每分钟 的第一秒 执行 test111.sh 而且向 testrsss.txt输出,查看是否正常执行,sh前面的就是user-name
具体缘由也没有深究,估计是docker的用户环境有冲突吧
不过最后试验后仍是不少奇怪的bug,决定不在docker中使用定时器了,下一篇继续记录解决方法
转载请注明博客出处:http://www.cnblogs.com/cjh-notes/