01
One project, one car.
A dedicated car is one Postgres with its own disk and its own restore point. Small projects can share a car, and a project that outgrows it moves to its own car with the same URL and password.
EARLY ACCESS
Boxcar gives every project its own Postgres on a Linux host you own. You get pooling, TLS, and restore to any second, with backups in your bucket that are test-restored every week. Unplug the console and every database keeps running.
One image. One host manager. One console that holds nothing hostage.
Ledger
Dedicated
RUNNING
Staging
Shared
RUNNING
Archive
Restore
RESTORING
Ledger · Postgres 16
backup 14m ago
postgresql://[email protected]:5432/ledger
POSTGRES 15–17 · PGVECTOR · PGBOUNCER · PGBACKREST
Every layer works on its own. Take off the top one and the database never notices.
WHY A CAR
A car is Postgres with the parts a production database needs already built in. Put as many cars as you like on one machine.
01
A dedicated car is one Postgres with its own disk and its own restore point. Small projects can share a car, and a project that outgrows it moves to its own car with the same URL and password.
02
A dedicated car ships WAL to your S3-compatible bucket every 60 seconds and keeps four weeks of history. Name a moment and Boxcar builds a new car from it. The original is never touched.
03
Every Sunday, each car restores its latest backup into a scratch car, checks it, and throws the scratch car away. A bad backup turns up on a quiet morning, not in the middle of an outage.
04
Import from Neon or Railway with one hook. Apps on Neon's serverless driver keep their queries over HTTP and WebSockets. Point the URL at Boxcar and redeploy.
05
It asks Dock what is running and reads metrics from the host. Close it, crash it, or delete it, and every database keeps serving, backing up, and taking connections.
06
Size, sessions, slow statements, locks, and backup age for every car, found through Docker labels. No agent goes inside a car. Alerts go out by webhook or email.
THREE MOVES
docker run boxcar/postgres, set a password, connect. That is already Postgres with TLS and pgvector. Give it a bucket and it starts archiving WAL and taking scheduled backups.
Dock runs Compose stacks and knows nothing about Postgres. The templates add that: shared cars, dedicated cars, and hooks to rotate, back up, restore, and import. Every hook call goes into an audit log on the host.
Sign in with the host password. Start a project, import one, or look at what is already running. Your data stays where it is.
FOR THE OPERATOR
Official Postgres plus pgvector, pg_stat_statements, pgBackRest, TLS, and point-in-time restore. You do not need Dock, the console, or an account. Add backup settings and it starts archiving WAL.
Want the whole yard? Request access# Ledger, on this machine.
docker run -d --name ledger \
-e POSTGRES_PASSWORD=change-me \
-p 127.0.0.1:5432:5432 \
boxcar/postgres:16-0.1.0NOW BOARDING
We are letting a small number of teams on board. Tell us what you will run and we will write back to the address you give us.
Early access is for operators who want Postgres on hardware they control. This form starts a conversation. It does not create an account.
BEFORE YOU ROLL
A Postgres container with pgvector, TLS, a monitor role, scheduled backups, and point-in-time restore, running on your host. A dedicated car carries one project. A shared car carries several.
In the car, and in the bucket you point backups at. The console keeps only the operator session and the access requests sent from this page. It never holds a copy of your databases.
When small projects can share one engine, one backup schedule, and one host port. When a project needs its own Postgres, its own disk, or its own restore point, promote it to a dedicated car. Its URL and password stay the same.
Yes. The image runs with docker run. Dock and the templates run without the console. Nothing calls home.
The operator of this host, with the host password. The form on this page asks for a conversation. It does not create an account.