ofelia Docker 镜像下载 - 轩辕镜像
ofelia 镜像详细信息和使用指南
ofelia 镜像标签列表和版本信息
ofelia 镜像拉取命令和加速下载
ofelia 镜像使用说明和配置指南
Docker 镜像加速服务 - 轩辕镜像平台
国内开发者首选的 Docker 镜像加速平台
极速拉取 Docker 镜像服务
相关 Docker 镜像推荐
热门 Docker 镜像下载
ofelia 镜像详细信息
ofelia 镜像标签列表
ofelia 镜像使用说明
ofelia 镜像拉取命令
Docker 镜像加速服务
轩辕镜像平台优势
镜像下载指南
相关 Docker 镜像推荐
ofelia 镜像详细说明
ofelia 使用指南
ofelia 配置说明
ofelia 官方文档
Ofelia - 作业调度器
Ofelia是一个基于Go构建的现代化、轻量级Docker环境作业调度器,旨在替代传统的cron。
为什么选择Ofelia?
cron发布至今已超过28年,世界发生了巨大变化,尤其是Docker革命之后。Vixie's cron虽然表现出色,但扩展性差,且出现问题时难以调试。
目前已有许多解决方案:现成的容器化cron、命令包装器等,但最终简单任务往往变得复杂。
工作原理
Ofelia的主要特性是能够直接在Docker容器中执行命令。通过Docker API,Ofelia模拟exec的行为,可在运行中的容器内执行命令,也可在新容器中运行命令并在执行结束后销毁容器。
配置
作业
调度格式与Go实现的cron相同,例如@every 10s或0 0 1 * * *(每天凌晨1点)。
注意:该格式以秒为起始,而非分钟。
支持四种作业类型:
job-exec:在运行中的容器内执行job-run:使用指定镜像在新容器内运行命令job-local:在运行Ofelia的主机上执行命令job-service-run:在swarm集群中创建"一次性"服务并执行命令
有关所有可用参数,参见作业参考文档。
INI风格配置
通过ofelia daemon --config=/path/to/config.ini运行
ini[job-exec "在运行中容器执行的作业"] schedule = @hourly container = my-container command = touch /tmp/example [job-run "在新容器执行的作业"] schedule = @hourly image = ubuntu:latest command = touch /tmp/example [job-local "在当前主机执行的作业"] schedule = @hourly command = touch /tmp/example [job-service-run "在新容器执行的服务"] schedule = 0,20,40 * * * * image = ubuntu network = swarm_network command = touch /tmp/example
Docker标签配置
要使用此配置类型,Ofelia需要访问Docker套接字。
shdocker run -it --rm \ -v /var/run/docker.sock:/var/run/docker.sock:ro \ --label ofelia.job-local.my-test-job.schedule="@every 5s" \ --label ofelia.job-local.my-test-job.command="date" \ mcuadros/ofelia:latest daemon --docker
标签格式:ofelia.<作业类型>.<作业名称>.<作业参数>=<参数值>。此配置类型支持INI文件的所有功能。
也可通过在目标容器上设置标签来配置job-exec,需在目标容器上添加ofelia.enabled=true标签。
例如,要让Ofelia在现有容器my_nginx中执行uname -a命令,需启动my_nginx容器时配置:
shdocker run -it --rm \ --label ofelia.enabled=true \ --label ofelia.job-exec.test-exec-job.schedule="@every 5s" \ --label ofelia.job-exec.test-exec-job.command="uname -a" \ nginx
此时启动Ofelia容器将获取两个作业:
- 本地作业 -
date - 执行作业 -
uname -a
Docker Compose示例:
yamlversion: "3" services: ofelia: image: mcuadros/ofelia:latest depends_on: - nginx command: daemon --docker volumes: - /var/run/docker.sock:/var/run/docker.sock:ro labels: ofelia.job-local.my-test-job.schedule: "@every 5s" ofelia.job-local.my-test-job.command: "date" nginx: image: nginx labels: ofelia.enabled: "true" ofelia.job-exec.datecron.schedule: "@every 5s" ofelia.job-exec.datecron.command: "uname -a"
日志
Ofelia提供三种日志驱动,可在[global]部分配置:
mail:发送邮件save:将结构化执行报告保存到目录slack:通过Slack webhook发送消息
配置选项
-
邮件驱动
smtp-host- SMTP服务器地址smtp-port- SMTP服务器端口smtp-user- SMTP服务器登录用户smtp-password- SMTP服务器登录密码email-to- 收件人***地址email-from- 发件人***地址mail-only-on-error- 仅在执行失败时发送邮件
-
保存驱动
save-folder- 报告保存目录save-only-on-error- 仅在执行失败时保存报告
-
Slack驱动
slack-webhook- Slack webhook URLslack-only-on-error- 仅在执行失败时发送Slack消息
并发控制
Ofelia可防止作业并行运行(例如首次执行未完成时再次调度)。若作业设置no-overlap选项,则不会并发执行。
安装
部署Ofelia最简单的方式是使用Docker(参见上述示例)。
若不想使用Docker镜像,可从发布页面下载二进制文件。
项目为何命名为Ofelia?Ofelia是西班牙漫画《莫塔德罗与菲莱蒙》(Mortadelo y Filemón)中的办公室助理。
用户好评
来自真实用户的反馈,见证轩辕镜像的优质服务
常见问题
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
轩辕镜像下载加速使用手册
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
登录仓库拉取
通过 Docker 登录认证访问私有仓库
Linux
在 Linux 系统配置镜像加速服务
Windows/Mac
在 Docker Desktop 配置镜像加速
Docker Compose
Docker Compose 项目配置加速
K8s Containerd
Kubernetes 集群配置 Containerd
宝塔面板
在宝塔面板一键配置镜像加速
群晖
Synology 群晖 NAS 配置加速
飞牛
飞牛 fnOS 系统配置镜像加速
极空间
极空间 NAS 系统配置加速服务
爱快路由
爱快 iKuai 路由系统配置加速
绿联
绿联 NAS 系统配置镜像加速
威联通
QNAP 威联通 NAS 配置加速
Podman
Podman 容器引擎配置加速
Singularity/Apptainer
HPC 科学计算容器配置加速
其他仓库配置
ghcr、Quay、nvcr 等镜像仓库
专属域名拉取
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429