在寻梦:crontab入门一:crontab定时启动docker容器里面详细的描述了关于如果利用crontab重启docker容器,如果不太熟悉的同学麻烦先去看寻梦:crontab入门一:crontab定时启动docker容器zhuanlan.zhihu.com
。
这篇文章主要讲解是如何重启docker容器的同时并启动容器内部的脚本。
首先查看运行我们在运行的容器
这次我们仍然是针对crontab_task进行演示操作
首先进入crontab_task容器内部:
进入容器内部命令:docker exec -it crontab_task bash
接下来,给大家看一下crontab_task内部的文件详情容器内部文件详情
详细描述运行文件:主要用到的就是home文件夹内的两个文件,这两个文件都是新建的
一个是demo.sh 脚本文件
#!/usr/bin/env python
python /home/demo1.py
另一个是demo1.py
if __name__ == '__main__':
a = 1
b = 1
print(a+b)
重点来了!请大家注意了。
本次demo目的就是每次隔一分钟重启crontab_task容器的同时并执行内部的demo.sh脚本文件,也就是执行demo1.py这个python文件。
接下来就是定时任务的设置了, crontab -e设置定时任务
*/1 * * * * docker restart crontab_task && docker exec crontab_task /bin/bash /home/demo.sh
重启定时任务
systemctl restart crond
测试效果
不知道你期望的效果是啥,正常应该是打印结果3,对吧
cat /var/spool/mail/root结果展示就是3
好的,写完了哈,如果还有哪里不清楚的话,请留言,我看到会第一时间回复你的。
如果这篇文章对您有一点帮助,麻烦点个赞,鼓励我一下!