docker crontab踩坑记录

环境,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/

相关文章
相关标签/搜索