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

直接使用社区 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"

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

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

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


Discussion