您的位置: 翼速应用 > 业内知识 > 运维 > 正文

一起聊聊在docker中如何解决crontab不生效的问题

在docker中如何解决crontab不生效的问题?方法来了:


1、排查容器内“/etc/init.d/crond status”是否为running状态;

2、修改“/etc/pam.d/crond”文件,将其中的“required”修改为“sufficient”;

3、利用“/etc/init.d/crond restart”重新启动crond服务即可。


一起聊聊在docker中如何解决crontab不生效的问题


本文适用于linux7.3系统、docker19.03版、Dell G3电脑。


一起聊聊在docker中如何解决crontab不生效的问题


在docker中默认使用centos镜像,在该镜像中没有安装crond,通过yum安装成功后,crontab没有生效。


1、首先排查容器内 /etc/init.d/crond status 是否为running状态。


如果通过第一步还无法解决,参考下面的办法:


2、修改/etc/pam.d/crond文件,将其中的required改为sufficient,然后重启crond服务:/etc/init.d/crond restart


重启crond服务


注意:在centos7的基础镜像里面好像没有该问题。


扩展知识


最早解决方案


1、在宿主机里面


       1 3  * * * root  cd /data/wwwroot/xxx && docker-compose exec app php think xxx >> /var/log/crontab_xxx.log
docker-compose exec app php think xxx一直执行不成功


2、然后在容器里面安装crontab,还是执行不成功,关键还没有相关日志。检查crontab也是启动的。 /etc/init.d/cron status


3、装上rsyslog, apt-get install rsyslog, service rsyslog start


查看 /var/log/syslog


Dec 25 09:07:07 1a8e4fd5c766 crontab[15120]: (root) BEGIN EDIT (root)
Dec 25 09:07:34 1a8e4fd5c766 crontab[15120]: (root) REPLACE (root)
Dec 25 09:07:34 1a8e4fd5c766 crontab[15120]: (root) END EDIT (root)
Dec 25 09:08:01 1a8e4fd5c766 cron[15100]: (root) RELOAD (crontabs/root)
Dec 25 09:08:01 1a8e4fd5c766 CRON[15133]: Cannot make/remove an entry for the sp


4、修改/etc/pam.d/cron


注释掉 session required pam_loginuid.so


5、重启cron,运行成功


还有就是,将这一行添加到dockerfile中


RUN sed -i '/session    required   pam_loginuid.so/c\#session    required   pam_loginuid.so' /etc/pam.d/crond
crontab执行还遇到了一个坑,手动执行脚本没有问题,因为读取了环境变量,php要写绝对路径


 /usr/local/bin/php think xxx


以上就是关于在docker中如何解决crontab不生效的问题之详解,翼速应用平台内有更多相关资讯,欢迎查阅!


我来说两句

0 条评论

推荐阅读

  • 响应式布局CSS媒体查询设备像素比介绍

    构建响应式网站布局最常见的是流体网格,灵活调整大小的站点布局技术,确保用户在使用的幕上获得完整的体验。响应式设计如何展示富媒体图像,可以通过以下几种方法。

    admin
  • 提升网站的性能快速加载的实用技巧

    网站速度很重要,快速加载的网站会带来更好的用户体验、更高的转化率、更多的参与度,而且在搜索引擎排名中也扮演重要角色,做SEO,网站硬件是起跑线,如果输在了起跑线,又怎么跟同行竞争。有许多方法可提升网站的性能,有一些技巧可以避免踩坑。

    admin
  • 织梦CMS TAG页找不到标签和实现彩色标签解决方法

    织梦cms是我们常见的网站程序系统的一款,在TAG标签中常常遇到的问题也很多。当我们点击 tags.php 页的某个标签的时候,有时会提示:“系统无此标签,可 能已经移除!” 但是我们检查程序后台,以及前台显示页面。这个标签确实存在,如果解决这个问题那?

    admin
  • HTML关于fieldset标签主要的作用

    在前端开发html页面中常用的标签很多,今天为大家带来的是关于HTML中fieldset标签主要的作用说明,根据技术分析HTML

    admin

精选专题