Skip to content

Self-host AdGuard Home

updated Jul 2026prices checked · Aug 2026Install verified on Ubuntu 26.04 · Jul 2026 · how we test

A single-binary, network-wide DNS ad and tracker blocker with a modern UI, built-in DoH/DoT encrypted DNS, and per-client rules out of the box. The polished alternative to Pi-hole.

Key facts

CategoryNetwork-wide ad blocking
LicenseGPL-3.0
StackGo
Min RAM512 MB
Dockeryes
Difficulty

What you need

  • Any VPS with at least 512 MB of RAM
  • A domain you control — most self-hosted setups need HTTPS in front of them
  • Under an hour if you've used Docker before

Install with Docker Compose

Save this as compose.yml and run docker compose up -d:

# AdGuard Home — network-wide DNS filtering
services:
  adguardhome:
    image: adguard/adguardhome:latest
    ports: ["53:53/tcp", "53:53/udp", "3000:3000/tcp", "80:80/tcp"]
    volumes:
      - ./work:/opt/adguardhome/work
      - ./conf:/opt/adguardhome/conf
    restart: unless-stopped
# On Ubuntu, free port 53 first: set DNSStubListener=no in
# /etc/systemd/resolved.conf, then sudo systemctl restart systemd-resolved
# docker compose up -d  →  http://SERVER_IP:3000 for the first-run wizard

Head-to-head

More self-hosted tools

We use analytics cookies (Google Analytics, PostHog) to see which guides are useful. No ad networks, no cross-site tracking. See our privacy policy.