Docker
Published image
Release images are published to the GitHub Container Registry on every tagged release:
docker pull ghcr.io/gopowerdns-admin/gopowerdns-admin:latest
# or pin to a specific release:
docker pull ghcr.io/gopowerdns-admin/gopowerdns-admin:v0.1.0-alpha.10Supported platforms: linux/amd64, linux/arm64, linux/arm/v7.
Volumes
| Path | Purpose |
|---|---|
/etc/go-pdns/ | Configuration — mount your main.toml here (read-only) |
/var/lib/go-pdns/ | Persistent data — SQLite database files and ACME certificate cache |
Run
docker run -d \
--name gopowerdns-admin \
-p 8080:8080 \
-v /path/to/your/etc:/etc/go-pdns:ro \
-v gopowerdns-data:/var/lib/go-pdns \
ghcr.io/gopowerdns-admin/gopowerdns-admin:latestDocker Compose (with local PowerDNS)
services:
gopowerdns-admin:
image: ghcr.io/gopowerdns-admin/gopowerdns-admin:latest
ports:
- "8080:8080"
volumes:
- ./etc:/etc/go-pdns:ro
- gopowerdns-data:/var/lib/go-pdns
environment:
GPDNS_PDNS_APISERVERURL: "http://powerdns:8081"
GPDNS_PDNS_APIKEY: "changeme"
GPDNS_PDNS_VHOST: "localhost"
depends_on:
- powerdns
volumes:
gopowerdns-data:Build locally
make docker-build
# with custom tag:
make docker-build IMAGE_NAME=ghcr.io/myorg/gopowerdns-admin IMAGE_TAG=v1.0.0Tips
- SQLite: set
Name = "/var/lib/go-pdns/go-pdns.db"so the database lands in the persistent volume. - ACME: set
ACMECacheDir = "/var/lib/go-pdns/acme-cache"for the same reason.
Last updated on