青龙面板使用教程:Docker 十分钟装好你的定时任务管理平台
2026/9/7 15:56:45 网站建设 项目流程

青龙面板使用教程:Docker 十分钟装好你的定时任务管理平台

【免费下载链接】qinglong支持 Python3、JavaScript、Shell、Typescript 的定时任务管理平台(Timed task management platform supporting Python3, JavaScript, Shell, Typescript)项目地址: https://gitcode.com/GitHub_Trending/qi/qinglong

半夜脚本跑挂了没人知道,crontab 里的日志翻都翻不到——如果你的定时任务管理还停留在命令行时代,青龙面板(QingLong)值得试一下。它是一个支持 JavaScript、TypeScript、Python3、Shell 的定时任务管理平台:Web 界面建任务、写脚本、看日志、管环境变量,默认端口 5700,一条 Docker Compose 命令就能跑起来。

它适合谁,不适合谁

一句话定位:给"手里有一堆脚本,想统一调度和监控"的人用的单机版定时任务管理平台。

说明
适合有 3 个以上定时脚本,想要统一调度、看日志、管环境变量的个人或小团队
适合混用多种语言脚本(py + js + sh 都要跑)
不适合需要原生集群部署的场景,它按单机设计,多实例要靠外部负载均衡
不适合只想管理传统 Linux crontab 条目、不想引入 Web 面板的运维

最小成本跑起来:Docker 安装青龙面板

最短路径就是 Docker。docker/docker-compose.yml 已经配好了端口和数据卷,clone 下来直接用:

git clone https://gitcode.com/GitHub_Trending/qi/qinglong cd qinglong/docker docker compose up -d

compose 文件里只做了三件关键的事:镜像whyour/qinglong:latest(另有基于 Debian 的whyour/qinglong:debian标签)、把宿主机./data挂进容器/ql/data、端口5700:5700。启动后浏览器访问 http://localhost:5700,首次进入是初始化页面,先创建账号密码再开始用。

不走 Docker 也行:本机装好 Node.js(14+)和 Python3,clone 代码后依次pnpm installpnpm run build:backpnpm run build:frontpnpm start,同样监听 5700 端口。

典型用法

每天定时跑一批脚本。在任务页新建定时任务,填 cron 表达式(标准 5 段写法),指向data/scripts/里的脚本文件即可。任务实际由 shell/task.sh 拉起,所以 js、ts、py、sh 四种后缀都能跑。任务多了还可以保存成任务视图统一管理,脚本页、任务页的交互逻辑可以看 src/pages/crontab/ 和 src/pages/script/。

跑挂了当场就能看见。每次执行都有独立日志文件,存放在data/log/下,面板里能翻历史,也能看实时输出。配合data/config/config.sh里的通知环境变量(Server酱、Bark、钉钉、企业微信、Telegram 等,变量清单见 sample/config.sample.sh),失败时能推到手机上。另外面板自带依赖管理页:任务缺 requests 或某个 npm 包时,在界面上装即可,不用 ssh 进服务器。

Cookie、API Key 不再散落在脚本里。环境变量统一在面板里维护,任务执行时自动注入,改一次所有脚本生效。想拉取别人维护的脚本仓库?订阅管理页填仓库地址,面板会把仓库 clone 到data/repo/并同步脚本,配合 config.sh 里的AutoAddCronDefaultCronRule还能自动建任务。

新手容易踩的坑

  • 首次访问不知道账号。初始没有默认密码,按初始化页提示创建即可;sample/auth.sample.json 只是配置模板,别把它当真实账号用。
  • 本地安装漏了环境变量。shell/start.sh 要求QL_DATA_DIR必须以/data结尾(如/ql/data),不满足会直接报错退出。
  • 备份方向搞错。真正需要备份的是data/目录(脚本、日志、SQLite 库data/db/database.sqlitedata/config/配置都在里面),而不是整个代码目录——Docker 方式下这就是你挂载的那个./data
  • 5700 端口被占。面板 HTTP 固定监听 5700(back/config/index.ts),端口冲突时改宿主机一侧的映射即可。
  • cron 表达式写不对。常规任务用标准 5 段格式,写错了任务不会执行也不报错,新建任务前先在面板里预览下次执行时间。

上手前你可能想问

它支持哪些语言的脚本?JavaScript、TypeScript、Python3、Shell 四种,文件放在data/scripts/下就能被任务和订阅识别。

数据存在哪,怎么备份?全在data/目录:data/db/database.sqlite是 SQLite 库,data/config/是配置,data/repo/是订阅仓库。Docker 部署只要备份挂载的./data就完整了。

集群部署?目前按单机设计。想水平扩展可以上负载均衡,但状态(脚本、数据库、日志)是本地文件,不适合无脑多开。

想跑起来:clone 仓库后按上面 Docker 三行命令部署,访问 http://localhost:5700 初始化账号即可。想看系统结构再读 docs/PROJECT_ARCHITECTURE.md,遇到问题可以提 issue 或在社区交流。

【免费下载链接】qinglong支持 Python3、JavaScript、Shell、Typescript 的定时任务管理平台(Timed task management platform supporting Python3, JavaScript, Shell, Typescript)项目地址: https://gitcode.com/GitHub_Trending/qi/qinglong

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询