专栏首页快乐学Python如何在 docker 中执行 crontab

如何在 docker 中执行 crontab

新建名为hello-cron的文件

内容为:

# PATH非常重要,因为cron bash和系统环境变量不一致
PATH="/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
 * * * * * echo hello > /proc/1/fd/1 2>/proc/1/fd/2
# An empty line is required at the end of this file for a valid cron file.

创建Dockerfile

内容为:

FROM ubuntu:latest
MAINTAINER docker@ekito.fr

RUN apt-get update && apt-get -y install cron

# Copy hello-cron file to the cron.d directory
COPY hello-cron /etc/cron.d/hello-cron

# Give execution rights on the cron job
RUN chmod 0644 /etc/cron.d/hello-cron

# Apply cron job
RUN crontab /etc/cron.d/hello-cron

# Create the log file to be able to run tail
RUN touch /var/log/cron.log

# Run the command on container startup
CMD ["cron", "-f"]

打开终端,构建&执行

sudo docker build --rm -t ekito/cron-example .
sudo docker run -t -i ekito/cron-example

本例中每分钟会输出 Hello world 打印

Hello world
Hello world

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • celery时差问题解决方法

    请记得点赞和分享这篇文章让更多的人看到它!另外,记得关注我的简书号马哥学Python,这样你就不会错过任何有价值的文章!

    马哥Python
  • Python装饰器入门教程 | 新手教程

    昨天简单聊了下Flask的学习感想,然后分享了一些Flask的学习方式与视频。其中提到在学习Python Web前,请先将python基础及装饰器等知识有一个了...

    马哥Python
  • 对mysql left join 出现的重复结果去重

    简单说明问题出现的原因: MySQL left join 语句格式为: A LEFT JOIN B ON 条件表达式

    马哥Python
  • Go 每日一库之 cron

    cron一个用于管理定时任务的库,用 Go 实现 Linux 中crontab这个命令的效果。之前我们也介绍过一个类似的 Go 库——gron。gron代码小巧...

    用户7731323
  • 使用cron创建定时任务【Golang 入门系列八】

    Go 实现的cron 表达式的基本语法跟linux 中的 crontab基本是类似的。cron(计划任务),就是按照约定的时间,定时的执行特定的任务(job)...

    架构师精进
  • Serverless架构开发与SCF部署实践

    近两年,Serverless技术的崛起让不少人看到了程序员减压甚至解放的希望,但开发难度和入门门槛却阻碍了这一技术的进一步扩张。开发难度、执行环境、代码运行等都...

    IT大咖说
  • Qt开源作品32-文本框回车焦点下移

    这个demo由于太过简单,而不用过多的文字描述,其实就是实现了在一个文本框中输入完成以后,回车自动跳入下一个文本框,焦点下移,这个在很多的社保系统、医疗系统等系...

    feiyangqingyun
  • 玩玩树莓派之配置Go环境

    AlicFeng
  • Jenkins CLI 命令行 v0.0.26

    本次版本发布,增加了两种包发行版:snapcraft、Chocolatey。snapcraft 是由 Ubuntu 提供的一个全新的 包管理器,它可以在 Cen...

    LinuxSuRen
  • 在阿里面试官面前现场手撕DelayQueue源码!

    延迟元素的无边界阻塞队列,在该队列中,仅当元素的延迟到期时才可以使用它. 队首是该 Delayed 元素,其延迟在过去最远过期. 如果没有延迟已经过期,就没...

    JavaEdge

扫码关注云+社区

领取腾讯云代金券