Deploy

Deploy Docker,

on a server run for you.

Push a repo with a Dockerfile or a docker-compose.yml and SelfHost builds the image and runs it on a dedicated server it provisions for you. No registry to manage, no host to patch, no reverse proxy to wire up.

Dockerfile + Docker Compose /Auto-deploy on push /Custom domain + SSL /From ~$0.02/hr

What you get

Your container, built and run.
On infrastructure you control.

SelfHost detects your Dockerfile or Compose file straight from GitHub, builds the image on the server, and runs it with health checks, streaming logs, and one-click rollback. Multi-container apps deploy from your compose file as-is. You get a real server you can see, not an opaque black box.

Dockerfile / Docker Compose (auto-detected)

Deploy in 5 steps

From zero to live.
No server to set up.

No registry push, no server setup. Connect the repo and SelfHost handles the build and the run.

1

Create a Project

Give it a name and SelfHost provisions a dedicated server for you in a couple of minutes.

2

Add your GitHub repo

Connect the GitHub App or paste a public repo URL and pick a branch. SelfHost detects your Dockerfile or docker-compose.yml automatically.

3

Set the port and env vars

Point SelfHost at the port your container listens on, and paste a .env to import your variables in bulk.

4

Point your domain

Use the default wildcard subdomain on selfhost.dev, or add your own: set the DNS records, verify with a TXT record, and HTTPS goes live automatically.

5

Deploy

SelfHost builds the image and runs it with health checks and streaming logs. Every push redeploys, and you can roll back any deploy in one click.

Environment variables

Configure it
in minutes.

Container settings are configured per service and wired into every build and run:

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

Key variables

PORT The port your container listens on, mapped to the public URL for you.
Build args Dockerfile build arguments, set per service.
.env import Paste a .env file to load all your runtime variables at once.

What you get

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

Dockerfile or Compose

Single-container Dockerfiles and multi-container docker-compose apps both deploy as-is.

A server you control

Your containers run on a dedicated server with live metrics and full logs, not a shared black box.

Nothing to maintain

No registry to manage, no host to patch, no reverse proxy to debug. SelfHost runs the server.

Auto-deploy + rollback

Every push to your branch rebuilds and ships, with PR preview environments and one-click rollback.

Custom domain + SSL

Add a domain, verify DNS, and HTTPS is provisioned and renewed automatically.

Pay only for what you run

Billed by the hour against prepaid credits, from ~$0.02/hr. Pause a service and pay nothing.

Which one

Docker vs a one-click database

Use a Dockerfile or Compose deploy for your own app images. If you just need a database next to your app, add a one-click PostgreSQL, Redis, MySQL, or MongoDB inside the same project instead of containerizing it yourself.

Frequently Asked Questions

Can I deploy a Dockerfile on SelfHost?
Yes. Connect a GitHub repo with a Dockerfile and SelfHost builds the image on the server and runs it, with health checks, streaming logs, and one-click rollback. No registry push needed.
Does SelfHost support Docker Compose?
Yes. Multi-container apps deploy straight from your docker-compose.yml. SelfHost runs the services together on your project server.
Do I need to push to a container registry?
No. SelfHost builds the image from your repo on the server. You connect the GitHub repo and it handles the rest. How Projects work.
How much does it cost to run a Docker app?
Pay-as-you-go by the hour against prepaid credits. A project server starts around $0.02/hr (about $0.50 a day) with no tiers. Pause it and you pay nothing. See pricing.
Can I add a database to my Docker app?
Yes. Add a one-click PostgreSQL, Redis, MySQL, or MongoDB to the same project, right beside your container, instead of running the database in Docker yourself.

Deploy your Docker app. We will run the server.

Dockerfile + Docker Compose
Auto-deploy + custom domain
From ~$0.02/hr, pay-as-you-go
Deploy Docker