trigger.dev 是一个非常推荐的自动化任务处理,实时通知的开源服务,与 Nextjs + Vercel 生态非常搭配,我会用它来批量处理定时任务,类似的还有 inngest 免费版本大方一些,支持 25 个并发任务。
官网在 https://trigger.dev/, 由于线上免费版本对并发的限制比较大,所以我尝试使用 self hosting 自部署版本,在我的服务器,通过 dokploy 进行部署,具体 dokploy 可以查看我之前的 dokploy 入门使用文章

部署 trigger.dev 社区 template

CleanShot 2025-06-30 at 22.36.58@2x.png

直接使用社区 trigger.dev 的 compose 版本部署,会出现如下报错:
You must set ELECTRIC_SECRET unless ELECTRIC_INSECURE=true. Setting ELECTRIC_INSECURE=true risks exposing your database, only use insecure mode in development or you've otherwise secured the Electric API"

CleanShot 2025-07-02 at 14.42.31@2x.png

需要将 Docker Compose 里面 Environment 修改一下

CleanShot 2025-07-02 at 15.06.00@2x.png

另外,如果你要自定义域名并且添加 https,需要将 Enviroment 里面的
1、TRIGGER_DOMAIN 修改为目标域名,我是在 Cloudflare 映射了一个自己的域名
2、将 TRIGGER_PROTOCOL 的 http 修改为 https

CleanShot 2025-07-02 at 15.07.17@2x.png

然后重新 Deploy 这个服务即可。

自定义域名配置

然后在 Domains 里面,配置你的目标域名和 SSL 证书服务即可,需要配置的是 webapp 服务,打开 https 开关,将证书服务设置为 lets enctypt 即可

CleanShot 2025-07-02 at 15.15.16@2x.png
CleanShot 2025-07-02 at 15.14.58@2x.png