Introduction
Getting started
Clone the repository, run the launcher, and open the control panel. This guide takes about five minutes from a fresh machine.
Overview
KillTheHost runs as a small fleet of docker containers orchestrated by a single Python launcher. The launcher bootstraps the control panel, starts the database engine, the PHP manager, the mail server and the stack manager, and opens an HTTP port on your machine so you can configure everything from a browser.
There is nothing to register, no license key to paste, and no data leaves your machine until you explicitly open a Cloudflare tunnel or point a real domain at it.
Requirements
KillTheHost is platform-agnostic but has two hard dependencies:
- Python 3.8 or newer — used to run the launcher and service-management scripts. Verify with
python --versionorpython3 --version. - Docker Engine 20.10+ — used to run every other service. On macOS and Windows we recommend Docker Desktop. On Linux, the native engine is fine.
Optional, but unlocks the best experience:
- A Cloudflare account (free tier is sufficient) — required to expose your local services to the public internet.
- A Namecheap account with API access — required to sync DNS records automatically.
Install
The repository lives at github.com/Official-phdesigns/KillTheHost. Clone it anywhere on your machine — all state lives inside the clone under the ./data directory.
Linux
# 1. Install Docker if you do not already have it$curl -fsSL https://get.docker.com | sh$sudo usermod -aG docker $USER# 2. Clone KillTheHost$git clone https://github.com/Official-phdesigns/KillTheHost.git$cd KillTheHost# 3. Make the launcher executable, then run it~/KillTheHost $chmod +x launch.sh~/KillTheHost $./launch.shOn a fresh Linux host you may need to newgrp docker or log out and back in so the docker group membership takes effect.
macOS
Install Docker Desktop from docker.com first — KillTheHost will refuse to start if the docker daemon is not running.
$git clone https://github.com/Official-phdesigns/KillTheHost.git$cd KillTheHost$./launch.shWindows
On Windows, use PowerShell with Docker Desktop running. Alaunch.bat wrapper is provided for convenience.
PS>git clone https://github.com/Official-phdesigns/KillTheHost.gitPS>cd KillTheHostPS>launch.batFirst launch
The first run takes a minute or two while docker pulls the service images. The launcher prints progress for each service and exits with a non-zero code if any of them fail to start.
$./launch.sh▸ Starting KillTheHost control panel...✓ Docker engine connected✓ DB-3NGIN3 5 engines ready✓ PHP-MNGR PHP 8.3 live✓ MAIL-SRVR DKIM / SPF / DMARC signed▸ Opening Cloudflare tunnel...✓ Public URL https://mysite.dev▸ Control panel http://localhost:5000Open the control panel
Once the launcher reports a ready state, open http://localhost:5000 in your browser. Press Ctrl+C in the terminal to shut everything down gracefully.
Next steps
- Learn what each piece does in the Unified Launcher guide.
- Wire up a Cloudflare Tunnel to expose
localhostto the world. See Cloudflare Tunnel. - Point a real domain at it with Domain Sync.