- 项目概述:
OliveTin
OliveTin 是一款基于Go语言开发并采用MIT许可证的轻量级Web界面任务执行工具。
该工具允许用户通过浏览器界面运行预先定义的Linux shell命令,从而简化复杂的命令行操作流程。
它特别适合非技术背景用户或需要安全可控地访问服务器命令的各种应用场景。
对于技术初学者而言,在参考网络教程时,常常需要登录Nas设备并执行Linux命令,然而命令行界面充斥着单调的黑白文本,对新手用户极不友好。在这种情况下,OliveTin能够提供有效帮助,我们只需复制他人分享的命令代码,将其写入 config.yaml 配置文件中,然后上传到Nas设备,最后通过OliveTin的浏览器界面即可轻松执行Linux命令,操作过程非常便捷。
对于技术专家用户,OliveTin 支持丰富的功能组合配置,包括条件输入设置、条件触发机制、执行实体定义、Prometheus集成、API接口调用和远程唤醒功能等。
对于注重界面美观的用户群体,OliveTin 提供自定义用户界面选项和丰富的图标库资源,满足个性化需求。

- 项目源代码仓库:
https://github.com/OliveTin/OliveTin - 官方文档手册:
https://docs.olivetin.app/(如果您对该项目感兴趣,建议保存此链接地址,后续使用中将提供重要帮助) - docker-compose部署配置:
services:
olivetin:
image: docker.1ms.run/jamesread/olivetin
container_name: olivetin
restart: unless-stopped
privileged: true ## 启用特权模式,以获得更多系统权限支持
user: root
network_mode: host
volumes:
- /vol1/1000/dockers/olivetin/config:/config ## 此处以飞牛Nas的存储路径作为示例
- /var/run/docker.sock:/var/run/docker.sock ## 用于Docker容器管理功能
#ports:
#- "1337:1337"
- 创建配置文件示例步骤
## 首先在本地计算机上创建 config.yaml 配置文件
## 编写一个简单的命令行配置示例,如下所示
## 然后将文件上传到飞牛Nas的指定目录:/vol1/1000/dockers/olivetin/config
actions:
- title: 查看运行中容器
shell: docker ps
请注意,即使Docker容器已经启动运行,您仍然可以修改这个 config.yaml 配置文件,因为项目会自动检测并重新加载配置变更
OliveTin 作为一款自动化命令执行工具,很自然地会让人联想到青龙面板。虽然两者都具备执行脚本和命令的能力,但这两个工具的设计重点存在明显差异。
OliveTin 主要侧重于帮助用户通过浏览器界面运行预定义的Linux shell命令,从而简化复杂操作流程。
青龙面板 则主要专注于定时任务执行功能,它支持Python、JavaScript、Shell和TypeScript等多种脚本语言,广泛应用于自动化签到、优惠券领取等场景,深受国内用户群体欢迎。
以下从多个维度对 OliveTin 与 青龙面板 进行详细对比分析
技术架构详细对比
OliveTin技术特点
- 后端技术:采用Go语言编写,生成单个二进制可执行文件。支持Linux shell命令执行,无需额外数据库支持。
- 前端技术:基于现代单页应用架构,使用JavaScript开发,采用响应式设计确保多设备兼容性。
- 部署方式:支持Docker容器化部署或直接运行二进制文件,兼容ARM64架构设备。
- 其他特性:集成PAM认证系统、ACL访问控制列表功能和触发器机制。
青龙面板技术特点
- 后端技术:基于Node.js运行时环境,需要node/npm/pnpm支持。兼容Python3、pip3等运行时环境,使用SQLite数据库存储任务和日志数据。
- 前端技术:采用TypeScript和现代化框架开发,Web界面支持任务管理和日志查看功能。
- 部署方式:支持Docker容器化部署或npm直接安装,提供多种版本选择。
- 其他特性:依赖pnpm包管理器,支持多语言脚本执行环境。
核心功能对比表格
| 功能特性 | OliveTin | Qinglong |
|---|---|---|
| 核心功能定位 | 通过Web界面运行预定义shell命令 | 定时执行Python、JavaScript、Shell、TypeScript等多种脚本任务 |
| 任务执行类型 | 手动触发执行,支持单一命令或脚本,提供参数选择功能 | 基于定时任务机制,支持批量脚本管理和调度 |
| 用户交互方式 | 提供按钮、下拉框等简化输入界面,适合非技术用户操作 | 通过Web界面配置Cron表达式、脚本内容和依赖关系,需要一定技术基础 |
| 自动化能力 | 自动化功能有限,依赖外部触发器或调度系统 | 具备强大的Cron调度系统,支持复杂定时逻辑实现 |
| 脚本语言支持 | 支持任意shell脚本,但需预先在配置文件中定义 | 支持多语言脚本环境,包括Python、JS、Shell和TS |
| 日志与监控功能 | 提供实时日志查看界面 | 具备详细任务日志记录,支持成功/失败状态跟踪 |
| 权限管理体系 | 通过ACL控制命令访问权限,集成PAM认证机制 | 提供基本用户管理功能和任务权限控制 |
| 系统扩展性能 | 通过shell脚本集成各种外部工具和系统 | 支持npm/pip依赖安装,具备较强的功能扩展性 |
优缺点深入分析
OliveTin优势与不足
- 主要优势:系统轻量级、部署简单快捷,适合快速执行预定义命令场景,对非技术用户非常友好。
- 存在不足:缺乏原生定时调度功能,需要依赖外部cron系统,功能相对单一,处理复杂自动化任务能力有限。
青龙面板优势与不足
-
主要优势:具备强大的Cron调度系统和多语言脚本支持,适合复杂自动化任务场景,拥有活跃的社区生态。
-
存在不足:部署和配置过程相对复杂,界面和依赖管理对新手用户不够友好。
总结评价
- 可以说
olivetin操作非常简单,只需复制命令后通过鼠标操作即可完成,且支持相同命令的重复执行 - 也可以说
olivetin配置较为复杂,因为需要通过config.yaml文件配置预定义命令,对于项目支持的其他高级功能,必须仔细研究官方操作手册才能熟练掌握
- 可以说