Introduction
Piped is a privacy-first, open-source alternative YouTube front-end. No Google tracking, no ads (even on videos that normally have unskippable ones), and it works perfectly with SponsorBlock and dearrow.
Self-hosting your own instance is incredibly easy with Docker and takes less than 20 minutes.
Requirements
- A domain (or subdomain)
- A cheap KVM VPS with Docker support (avoid OpenVZ — old kernel)
- ~$3–6/month is more than enough (1 CPU, 1–2 GB RAM)
Great cheap providers in 2025:
- RackNerd
- Hostinger (my affiliate if you want to support https://hostinger.com.br?REFERRALCODE=waterdownfall)
- Cloudcone, Hetzner Cloud, BuyVM, etc.
Step 1: Secure & Prepare Your VPS
(SSH keys only, firewall, etc. — do this first!)
Then install Docker (Ubuntu/Debian example):
apt update && apt upgrade -y
apt install -y ca-certificates curl gnupg lsb-release
# Add Docker repo
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" > /etc/apt/sources.list.d/docker.list
apt update
apt install -y docker-ce docker-ce-cli containerd.io docker-compose-pluginStep 2: Deploy Piped with the Official Docker Setup
cd /opt
git clone https://github.com/TeamPiped/Piped-Docker
cd Piped-Docker
./configure-instance.shDuring the script:
- Choose Caddy as reverse proxy (easiest + automatic SSL)
- Enter your domain and subdomains:
- Frontend → piped.yourdomain.com
- Backend API → pipedapi.yourdomain.com
- Proxy → pipedproxy.yourdomain.com
Step 3: Point DNS to Your VPS
Create three A records at your DNS provider:
piped.yourdomain.com → VPS_IP
pipedapi.yourdomain.com → VPS_IP
pipedproxy.yourdomain.com → VPS_IPStep 4: Launch Everything
docker compose up -dThat’s it!
After DNS propagates (usually < 10 minutes), your private YouTube will be live at:
Caddy automatically handles free Let’s Encrypt SSL — no manual certbot needed.
Step 5: (Optional) Check Logs
Bash
# See what Caddy is doing
docker logs -f caddy
# Or any other container
docker logs -f piped-frontendBonus Tips
- Want to make it public? Just share the URL — anyone can use your instance.
- Want it private? Block it with Cloudflare firewall rules or basic auth in Caddy.
- Pair it with the LibreTube (Android) app for the full de-Googled experience.
You now have your own ad-free, tracking-free, SponsorBlock-enabled YouTube — fully under your control.
If this guide helped you, feel free to share it or subscribe to The Self Hosting Art. Thanks for reading!