Deploy

Deploy Docker Compose,

on a server run for you.

Bring your docker-compose.yml and SelfHost deploys the whole multi-container app onto a single server we provision and maintain. Your web service, workers, and datastores come up together, with custom domains and SSL, and nothing for you to patch.

Why rent a VPS to run compose by hand, when you can SelfHost it?

Straight from compose /Multiple services, one server /Custom domain + SSL /From ~$0.02/hr

What you get

Your whole compose stack.
On a server you control.

A docker-compose file is the easiest way to describe a multi-service app: a web container, a worker, a cache, a database, all wired together. SelfHost deploys that compose file onto one dedicated server, brings the services up, and handles the proxy and TLS, so you do not need a VPS and a manual docker compose up.

Docker Compose

Deploy in 5 steps

From zero to live.
No server to set up.

From a compose file to a live multi-container app, on a server handled for you.

1

Create a Project

Name it and a dedicated server is provisioned in minutes.

2

Connect a repo with a compose file

Connect GitHub or paste a repo URL that contains your docker-compose.yml, and pick the branch.

3

Select the Docker Compose build pack

SelfHost reads your compose file and builds or pulls each service. Set which service is web-facing and its port.

4

Set environment variables

Provide the variables your services expect, or paste a .env to import in bulk. They are passed to the right containers.

5

Point a domain and deploy

Map a custom domain to your web service, and HTTPS goes live automatically. Push to redeploy the whole stack.

Environment variables

Configure it
in minutes.

Compose apps usually share a set of variables across services:

Paste a .env to import in bulk, or set keys one by one. Values are wired into every build and deploy.

Key variables

POSTGRES_* / MYSQL_* Credentials for a database service defined in your compose file.
REDIS_URL Connection string for a cache or queue service.
APP secrets Any keys your web or worker services read from the environment.

What you get

Docker Compose, the easy way.
On a server you control.

Deploy your compose file as-is

Bring the docker-compose.yml you already use in development and deploy the same stack to production.

Many services, one server

Web, worker, cache, and database run together on a single project server, billed as one server.

A server you control

Live metrics and logs for your services on a dedicated server you own, not a shared platform.

Auto-deploy on push

Push to redeploy the whole stack, with rollback and streaming logs.

Custom domain + SSL

Point a domain at the web service and HTTPS is provisioned and renewed for you.

Pay only for what you run

From around $0.02/hr against prepaid credits, paused at a zero balance.

Which one

For managed databases, split them out

Running a database container in compose is fine for many apps. For a production database with PITR, pooling, and Multi-AZ, attach a dedicated managed PostgreSQL instead and point your compose services at it.

Frequently Asked Questions

Can I deploy a docker-compose.yml on SelfHost?
Yes. Connect a repo with your compose file, choose the Docker Compose build pack, and SelfHost builds or pulls each service and runs the whole stack on one dedicated server, with a domain and SSL for the web service.
Do all services run on one server?
Yes. The services in your compose file run together on a single project server, billed as one server rather than per service.
Should I run my database in compose or as a managed instance?
A database container is fine for many apps. For production durability, attach a dedicated managed PostgreSQL with PITR and pooling and point your services at it. Managed PostgreSQL.
How much does it cost?
Pay-as-you-go from around $0.02/hr per project server (about $0.50 a day), no tiers. Link a card for a welcome credit worth roughly 48 hours. See pricing.
What about a single container instead of compose?
If you only have one container, deploy it directly from a Dockerfile or image. Deploy with Docker.

Your whole compose stack.
On a server run for you.

Straight from compose
Many services, one server
Run a project free for ~48 hours
Deploy Docker Compose