Ofelia 定时任务调度器
Ofelia 是一个现代化的 Docker 环境任务调度器,用于替代传统 cron。支持在运行中的容器内执行命令、启动新容器执行任务,以及在 Ofelia 容器内执行命令,提供灵活的调度表达式和多种日志驱动。
安装次数
点赞
应用评论
催更次数
桌面端




应用描述
## Ofelia - Docker 定时任务调度器 **官方网站:** https://github.com/mcuadros/ofelia **仓库地址:** https://github.com/lazycatapps/ofelia.git Ofelia 是一个现代化的、低资源占用的 Docker 环境任务调度器,基于 Go 语言开发,旨在替代传统的 cron。 **部署前提:** 1. 该应用依赖 dockge,请先部署 dockge 应用,才能使用 ofelia 默认启动新容器、观测的容器是 dockge 的,不会影响到 lzc-docker 的稳定性,请放心使用。 ## 工作模式 Ofelia 支持两种工作模式,通过环境变量 `MODE` 配置: - **daemon(默认)**:通过配置文件 `config.ini` 定义任务,适合预定义的固定任务配置 - **docker**:自动读取所有容器的 Docker 标签来配置任务,适合动态容器环境 ## 主要功能 - ⏰ Docker 容器的定时任务调度 - 🏷️ 支持通过 Docker 标签或 INI 配置文件进行配置 - 🐳 默认读取所有 Docker 容器的标签进行配置 - 📝 提供三种不同的日志驱动 - 🔄 支持 job-exec(在运行中的容器内执行命令) - 📅 支持 job-run(启动新容器执行任务) - ⚡ 支持 job-local(在 Ofelia 容器内执行命令) - 🎯 灵活的调度表达式支持 ## 使用方法 **Daemon 模式(默认):** 1. 将配置文件放置在 `/lzcapp/var/config/config.ini` 中 2. 确保 Docker socket 可访问(应用已自动挂载) 3. 在配置文件中定义定时任务规则 4. 启动应用后,Ofelia 将自动按照配置执行定时任务 **Docker 模式:** 1. 修改环境变量 `MODE=docker` 2. 在需要执行定时任务的容器上添加 `ofelia.*` 标签 3. Ofelia 会自动监控并执行带标签的容器任务 4. 通过 `lzc-docker logs -f ofelia` 查看日志确认任务执行情况 ## 配置示例 **方式一:使用配置文件(daemon 模式)** 在 `config.ini` 文件中配置任务: ```ini [job-exec "my-scheduled-job"] schedule = @daily container = my-container command = backup.sh ``` **方式二:使用 Docker 标签(docker 模式)** ```yaml labels: ofelia.enabled: "true" ofelia.job-exec.datecron.schedule: "@every 5s" ofelia.job-exec.datecron.command: "date" ``` **Docker 模式测试示例:** ```bash # 启动测试容器 pg-docker run -it --rm --name=ofelia-test \ --label ofelia.enabled=true \ --label ofelia.job-exec.test-exec-job.schedule="@every 5s" \ --label ofelia.job-exec.test-exec-job.command="/bin/sh -c 'date >> /tmp/example'" \ alpine:latest sleep infinity # 验证任务执行 pg-docker exec -it ofelia-test cat /tmp/example # 查看 Ofelia 日志 lzc-docker logs -f ofelia ``` ## 注意事项 - ⚠️ 应用需要访问 Docker socket 才能正常工作 - 📌 配置文件路径固定为 `/lzcapp/var/config/config.ini` - 🔒 数据目录挂载在 `/lzcapp/var/data` - 🔄 **Daemon 模式**:修改 `config.ini` 后需要重启应用才能生效 - 🔄 **Docker 模式**:新增或修改容器标签后,Ofelia 会自动检测并应用
懒猫评分/评论
0.0
0 条评论
新功能
版本历史记录"初始化 Ofelia 应用到 LazyCAT 平台,支持 daemon 和 docker 两种工作模式,可通过配置文件或容器标签灵活配置定时任务,适配 dockge 容器环境。\n"
此 App 尚未收到足够的评分或评论,无法显示评论列表。