Automate business processes.

Trigger.dev

Trigger.dev — self-hosted TypeScript background job platform.

2 GB minimum (4 GB recommended) RAM 2 vCPU Port 3030 Available

Tech stack

DockerNode.jsPostgreSQL 16Redis 7ElectricSQL
Minimum RAM2 GB minimum (4 GB recommended)
Minimum CPU2 vCPU
Default port3030
Compatible OSChoice of Linux distributions

Trigger.dev is an open-source background job platform built for TypeScript developers who need reliable, observable task execution without the complexity of managing queues, workers and retry logic themselves.

Unlike BullMQ or simple cron jobs, Trigger.dev tasks are *durable*: they checkpoint their state between steps so a mid-run crash never loses progress. Long-running jobs (ETL pipelines, bulk email sends, AI inference chains) can run for minutes or hours without hitting a timeout.

The self-hosted stack runs on Docker Compose: a webapp container (UI + API + job scheduler), PostgreSQL (state and queue storage with logical replication for ElectricSQL sync), Redis (pub/sub and lock management), an ElectricSQL electric service, and two task executor services (docker-provider and coordinator) that spawn isolated worker containers on demand.

First access uses a magic-link flow: enter your email on the login page and retrieve the link from the webapp container logs — no SMTP setup required on day one.

Key features

Durable tasks — jobs resume automatically from their last checkpoint after a crash or restart, even if they were running for hours.
Automatic retries with exponential back-off — configure max attempts and delay strategy per task; failed runs appear in the live dashboard with full logs.
Concurrency control — set per-queue or per-task concurrency limits to protect downstream APIs and databases from overload.
Real-time run dashboard — watch task execution live, inspect payloads, logs and durations without touching the server.
Scheduled tasks — define cron-based recurring jobs directly in code; no external cron daemon required.
SDK-first developer experience — define tasks with task() in your existing TypeScript codebase; no new language or DSL to learn.

When to use this solution?

1

Background job processing

Offload slow or unreliable operations — image resizing, PDF generation, external API calls — from your web request cycle. Tasks retry automatically on failure and results are inspectable in the dashboard.

2

Long-running AI pipelines

Chain LLM calls, vector database queries and post-processing steps in a single durable task. If one step fails or times out, Trigger.dev resumes from the last checkpoint without restarting from scratch.

3

Scheduled data workflows

Replace fragile server cron jobs with typed, observable scheduled tasks. Define the schedule in code, monitor runs in the dashboard and receive alerts on consecutive failures.

Deploy Trigger.dev on your VPS

Guide optimized for ServOrbit Cloud VPS.

01

Open the login page

Navigate to https://<domain> and enter your email address. Trigger.dev will generate a magic link for first-time login.

02

Retrieve the magic link from container logs

Run docker compose logs webapp | grep 'magic-link' and copy the link. Paste it in your browser to complete authentication and land on the dashboard.

03

Create your first project

In the dashboard, click Create project, choose a name and pick an environment (development or production). Note the TRIGGER_SECRET_KEY shown — you will need it to connect your app.

04

Install the SDK and define a task

In your TypeScript project, run npm install @trigger.dev/sdk then point the SDK at your VPS: `env TRIGGER_API_URL=https://<domain> TRIGGER_SECRET_KEY=<key> Define a task with task() and trigger it with myTask.trigger(payload)` — the run appears in the dashboard immediately.

05

Start the dev CLI (optional)

For local development, run npx trigger.dev@latest dev in your project. The CLI tunnels to your self-hosted instance so you can test task changes without redeploying.

Frequently asked questions

Trigger.dev uses magic-link authentication. Open https://<domain>, enter your email and run docker compose logs webapp | grep 'magic-link' to retrieve the link from the container logs. No SMTP configuration is required on day one.

Embed the deploy button

Maintaining a project that uses Trigger.dev? This button lets your readers deploy it on a VPS in one click, without reading Docker documentation.

Deploy Trigger.dev on ServOrbit
Markdown
[![Deploy Trigger.dev on ServOrbit](https://servorbit.com/brand/deploy/button.svg)](https://servorbit.com/vps-cloud?template=trigger-dev&utm_source=deploy-badge&utm_medium=referral&utm_campaign=trigger-dev)
HTML
<a href="https://servorbit.com/vps-cloud?template=trigger-dev&utm_source=deploy-badge&utm_medium=referral&utm_campaign=trigger-dev"><img src="https://servorbit.com/brand/deploy/button.svg" alt="Deploy Trigger.dev on ServOrbit" height="40"></a>

The button points to a VPS order with the template preselected. The image is served from servorbit.com — nothing to host on your side.

Automate business processes.

Activate Trigger.dev on your infrastructure.

Dedicated Cloud VPS — IPv4 included, European datacenter, support included. Your data never leaves your server.

Recommended configuration: 2 GB minimum (4 GB recommended) RAM · 2 vCPU

Need help?

Browse our help center and FAQ, or reach our team — callback, WhatsApp or email. Support in French, English and Arabic.

Message us on WhatsAppopens in a new tab