Skip to content

Deployment

dnsweaver runs as a lightweight container in Docker or Kubernetes. This section provides production-ready configurations for all supported environments.

Deployment Options

  • Docker Compose


    The simplest deployment for single-host environments. Recommended for getting started.

    Docker Compose

  • Docker Swarm


    Production deployment for multi-node Docker clusters with high availability.

    Docker Swarm

  • Kubernetes


    Deploy with Helm or Kustomize. Watches Ingress, IngressRoute, HTTPRoute, and Service resources.

    Kubernetes

  • Split-Horizon DNS


    Configure internal and external DNS records from the same container labels.

    Split-Horizon

Quick Comparison

Feature Docker Compose Docker Swarm Kubernetes
Complexity Simple Moderate Moderate
High availability
Secrets management File-based Native secrets K8s Secrets
RBAC Docker socket Docker socket ClusterRole
Best for Development Multi-node Docker K8s clusters

Common Requirements

Regardless of deployment method, dnsweaver needs:

  1. Platform access — Docker socket (Docker) or RBAC ServiceAccount (Kubernetes)
  2. Network connectivity — To reach DNS provider APIs
  3. Credentials — API tokens for your DNS providers

Docker socket security

The Docker socket provides root-level access to your host. For production deployments, consider using a socket proxy to limit dnsweaver's API access.

Next Steps

Choose the deployment guide that matches your environment, then configure your DNS providers.