How It Works/Workers

Workers

A worker is a long-running background process that runs alongside your app container. It uses the same built image as your app, so no separate repository or Dockerfile is needed — just a different command.

Workers are available on Starter, Pro, and Power project plans.

What workers are for

Workers are useful for processing background jobs, running queues, handling scheduled tasks, or any work you don't want running in the same process as your web server.

Common patterns:

  • A BullMQ worker processing jobs from a Redis queue
  • A cron-like process running scheduled tasks
  • A separate process consuming a message queue

Configuring a worker

From your project's Configure tab, enable the Worker service and set a command. This is the command that runs in the worker container. For example:

node dist/worker.js

or with Bun:

bun run src/worker.ts

The worker shares the same environment variables, provisioned services, and /data volume as your main app container. It starts alongside the app and restarts automatically if it crashes.

Worker vs app process

App Worker
Handles HTTP requests Yes No
Starts on deploy Yes Yes
Shares env vars Yes
Shares /data volume Yes
Restarts on crash Yes Yes

Availability

Workers require a paid project plan (Starter or above). Projects using the free dynamic allowance run a single process only.

© 2026 Jetpacked. All rights reserved.

PrivacyTerms