Ofelia 项目使用教程

Ofelia 项目使用教程

ofelia A docker job scheduler (aka. crontab for docker) ofelia 项目地址: https://gitcode.com/gh_mirrors/of/ofelia

1. 项目介绍

Ofelia 是一个现代且低内存占用的 Docker 作业调度器,旨在替代传统的 cron 工具。Ofelia 基于 Go 语言开发,特别适用于 Docker 环境。它能够直接在 Docker 容器中执行命令,支持在运行中的容器或新容器中执行任务,并且配置灵活,支持 INI 文件和 Docker 标签两种配置方式。

2. 项目快速启动

2.1 安装 Ofelia

Ofelia 可以通过 Docker 快速部署。以下是使用 Docker 运行 Ofelia 的示例:

docker run -it --rm \
  -v /var/run/docker.sock:/var/run/docker.sock:ro \
  mcuadros/ofelia:latest daemon --docker

2.2 配置 Ofelia

Ofelia 支持两种配置方式:INI 文件和 Docker 标签。

2.2.1 使用 INI 文件配置

创建一个配置文件 config.ini

[job-exec "job-executed-on-running-container"]
schedule = @hourly
container = my-container
command = touch /tmp/example

[job-run "job-executed-on-new-container"]
schedule = @hourly
image = ubuntu:latest
command = touch /tmp/example

[job-local "job-executed-on-current-host"]
schedule = @hourly
command = touch /tmp/example

然后运行 Ofelia 并指定配置文件路径:

docker run -it --rm \
  -v /var/run/docker.sock:/var/run/docker.sock:ro \
  -v $(pwd)/config.ini:/etc/ofelia/config.ini \
  mcuadros/ofelia:latest daemon --config=/etc/ofelia/config.ini
2.2.2 使用 Docker 标签配置

在目标容器上添加标签来配置 Ofelia:

docker run -it --rm \
  --label ofelia.job-local.my-test-job.schedule="@every 5s" \
  --label ofelia.job-local.my-test-job.command="date" \
  mcuadros/ofelia:latest daemon --docker

3. 应用案例和最佳实践

3.1 定时备份数据库

使用 Ofelia 可以轻松设置定时备份任务。例如,每天凌晨 2 点备份数据库:

[job-exec "backup-database"]
schedule = 0 2 * * *
container = db-container
command = mysqldump -u user -p password database > /backup/db-$(date +\%F).sql

3.2 清理日志文件

定期清理日志文件以节省磁盘空间:

[job-local "clean-logs"]
schedule = @daily
command = find /var/log -type f -name "*.log" -mtime +7 -delete

4. 典型生态项目

Ofelia 可以与其他 Docker 生态项目结合使用,例如:

  • Docker Swarm: 在 Swarm 集群中使用 Ofelia 调度任务。
  • Prometheus: 结合 Prometheus 监控 Ofelia 的运行状态。
  • Grafana: 使用 Grafana 可视化 Ofelia 的调度任务执行情况。

通过这些生态项目的结合,可以构建一个强大的自动化运维平台。

ofelia A docker job scheduler (aka. crontab for docker) ofelia 项目地址: https://gitcode.com/gh_mirrors/of/ofelia

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

富珂祯

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值