dcoker-compose – So führen Sie crontab unter Docker aus
習慣沉默
習慣沉默 2017-05-24 11:32:55
0
2
990

Das Projekt läuft unter Docker, und jetzt ist Crontab erforderlich. Ich möchte Crontab unter Docker hinzufügen, finde aber, dass es nicht hinzugefügt werden kann. Wie fügen die Experten, die Docker verwenden, ihre eigene Crontab unter Docker hinzu?
Das Projekt verwendet Docker-Compose 2.0
Das System ist mit Ubuntu ausgestattet
Die Sprache ist PHP7

習慣沉默
習慣沉默

Antworte allen(2)
刘奇

我的做法:

1,Dockerfile 里安装 crontab
2,用 volume 把本地的 etc/crontab 文件映射进去。当然也可以在 Dockerfile 里直接写进去
3,用 supervisor 启动主应用和 crontab

其实使用 crontab 无非就是:安装,配置,启动。前两步直接写在 Dockerfile 中 build 时就做好了。关键是如何启动,因为 Docker 只接受一个 CMD,没法同时启动主应用和 crontab,用 supervisor 就可以了。

PHPzhong

1.Dockerfile如下

FROM centos
MAINTAINER zhaojunlike<zhaojunlike@gmail.com>
ADD ./crond/task.sh /server/task.sh
##安装并添加任务到crontab
RUN yum install crontabs -y \
    && (crontab -l; echo "*/1 * * * * /server/task.sh >>/var/log/task.log" ) | crontab
CMD crond

你可以添加到docker-compose进行构建

2.可以使用其他脚本写一个daemon程序,去模拟crontab实现

3.宿主机去实现(不推荐)

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!