App hosting beside the database
The app and its database, one machine, one bill.
A small product is usually one app and one database, hosted by two companies, with a network between them and each metering its own traffic. On Lathe the app runs on the same dedicated machine as its Postgres, Redis, CouchDB or NATS: the connection strings are in its environment, the two talk on loopback, and the plan price covers both.
What changes when the app moves in.
- One bill
- The plan price covers the machine, the databases, the app, its domains and 20 TB of traffic a month. There is no second vendor and no line for the app.
- No network between them
- The app reaches its databases on the machine itself, with the URLs and passwords already in its environment. Nothing to copy, nothing to rotate by hand.
- Deploys from a push
- Connect the GitHub repository and the workflow that already builds your image, and a green run deploys it; or call the deploy endpoint from any CI. The new container takes traffic once it answers its health path, and one that never answers changes nothing.
- Your domain
- Point an A record at the machine and name the hostname on the app; the certificate follows within a minute. Every public app also has a name of its own from the start.
- Rollback
- Every deploy is a tag. Name the previous one and the same deploy runs in the other direction.
- What it is not
- A build service or an autoscaler. The machine pulls an image you built and runs it at the size you give it; more app means a bigger plan, not more instances.
Good for
- A web app and its Postgres on one machine
- A worker that drains a NATS stream or a Redis queue beside the engine it reads
- Internal tools next to the data they show
- A side project that needs a database, a domain and a place to run
Questions
What does the image need to do?
Three things: listen on the port the machine passes in PORT, answer a health path with a 2xx once it is ready, and keep anything it wants to keep under /data. Any language, any base image, built for linux/amd64.
Can the app be private?
Yes. An app not marked public is reachable on loopback only, by the machine's other apps, which find it as an environment variable.
How much memory does an app get?
The share you give it out of the apps engine's budget, which comes out of the plan's RAM. Automatic reallocation moves memory between the engines and the apps from what each one holds.
Do I need the apps engine on for the databases?
No. The engines are independent; switch apps on when there is something to run, and its memory comes back to the others when it is off.
Read next: Flat-price managed database, No egress fees, Never paused, never metered, Self-hosted VPS or managed, pgvector on your own machine, Supabase alternative, Neon alternative, Moving a Postgres database, Redis beside Postgres, A database for side projects, One machine, every engine, Sign-in without a price per user, Move off Supabase, keep the client; all of them on the blog. Every number on this page comes from the pricing page's facts.
Your app beside its database, from $15 a month.
Live about 90 seconds after checkout. Cancel any time; Mini starts with a 3-day free trial.
Start free - 3 days, no card needed