Run your Docker projects
on a VPS — not your Mac .
Code stays on your laptop. Builds and containers live on the server. Every project gets its own HTTPS subdomain, automatically.
$ curl -fsSL https://raw.githubusercontent.com/Enochthedev/remote-dev-kit/main/install-global.sh | bash01 — Why
You bought a laptop to write code, not to host a container farm .
Six reasons the build belongs on the server — hover to open each one.
Reclaim your Mac
No local images, no build cache, no daemon eating RAM. You can quit Docker Desktop and OrbStack entirely.
Code never leaves your machine
It's baked into a throwaway image on the VPS — not synced as a folder. Tear it down and it's genuinely gone.
Instant HTTPS subdomains
myapp.dev.yourdomain.com, certificate and routing handled. One DNS record covers every project you'll ever deploy.
Any language
If it has a Dockerfile, it works. Node, Go, Rust, Python, PHP, static sites.
Just needs a VPS
The kit brings its own Traefik. No PaaS required. Already running Coolify? It plugs into that instead.
Hardened, and auditable
No eval of your config, secrets auto-ignored, and rdk audit checks a live deploy for TLS, headers and exposed debug pages.
02 — Reclaim your Mac
Docker's weight, lifted off your laptop.
Docker Desktop runs a whole Linux VM in the background — RAM reserved, a daemon idling, a disk image that only grows, and fans that notice. rdk moves all of it to the VPS. You can quit Docker Desktop entirely.
- Docker Desktop — quit
- 4–8 GB RAM — freed
- Build cache — 0 bytes
- Fans — silent
The whole workload moves to the VPS. Check on it anytime with rdk vps — every project on the box, not just this one.
03 — How it works
Your Docker CLI points at the VPS over SSH. The build happens there.
Nothing lands on your Mac.
No editable source persists on the server — the app is baked into the image, not bind-mounted.
04 — Three steps to live
From clone to a certificate in minutes.
Point a wildcard at your VPS
One A record — *.dev → your VPS IP, DNS only (grey cloud). Set it once; you never touch DNS again.
Configure the project
rdk init writes .env.remote — the only file the kit adds to your repo.
cd ~/Code/your-project rdk init # writes .env.remote, then edit it rdk connect # create the docker context (once)
Deploy
rdk proxy up # bare VPS only — once per server rdk up # build on the VPS + go live
Live at https://<APP_HOST>, with a certificate.
Already running Coolify?
Skip the proxy step and set PROXY_NETWORK=coolify — Coolify already owns ports 80 and 443, and two proxies cannot share them. The kit detects the network and routes through Coolify's Traefik instead of starting its own.
05 — The commands
There aren't many. That's on purpose.
The whole surface area, on one screen.
| Command | Does |
|---|---|
rdk init | Scaffold .env.remote — the only per-project file |
rdk connect | Create the Docker context for this project |
rdk up | Build on the VPS and deploy |
rdk watch | Live-sync your edits into the container (hot reload) |
rdk logs · ps · sh | Follow logs · list this project's services · shell in |
rdk vps | List everything on the VPS — every project, not just yours |
rdk stop | Stop containers, keep the data |
rdk down | Destroy — containers, images and volumes |
rdk doctor | Check prerequisites: docker, SSH, context |
rdk audit | Security audit of the live deployment |
06 — Prefer not to touch a terminal?
There's a VS Code extension. Same engine, same config file.
Remote Dev Kit
# the only file rdk adds to your repo PROJECT_NAME=myapp APP_HOST=myapp.dev.yourdomain.com APP_PORT=8000 VPS_SSH=root@your.vps.ip PROXY_NETWORK=web
- Sidebar, not shell. Deploy, Watch, Logs, Status, Open in Browser, Destroy — all from the Remote Dev Kit view.
- One source of truth. Configure… writes the same
.env.remotethe CLI reads, so the two can't drift apart. - Mix freely. Deploy from the sidebar, tail logs from your terminal. It's the same stacks underneath.
Build local · run remote · tear down clean.
$ curl -fsSL https://raw.githubusercontent.com/Enochthedev/remote-dev-kit/main/install-global.sh | bash