# Optional turnkey DNS — only if you DON'T run your own party DNS server.
# Layer on: `docker compose -f docker-compose.yml -f docker-compose.dnsmasq.yml ... up -d`.
# Serves dnsmasq/dnsmasq.conf (rendered from the template, includes the airgap
# spoof records). If you have your own DNS, skip this and use the records from
# `tooling/dns-records.sh` instead.
services:
  dnsmasq:
    image: jpillora/dnsmasq
    container_name: dnsmasq
    restart: unless-stopped
    ports:
      # Bind DNS to the host LAN IP so it doesn't clash with systemd-resolved on :53.
      - "${HOST_LAN_IP}:53:53/udp"
      - "${HOST_LAN_IP}:53:53/tcp"
    volumes:
      - ./dnsmasq/dnsmasq.conf:/etc/dnsmasq.conf:ro
    networks:
      - mcnet
    # webproc UI (:8080) can be exposed behind Caddy as dns.${BASE_DOMAIN};
    # guard with HTTP_USER / HTTP_PASS.
