Asgard is a Kerberos appliance. It runs a Heimdal KDC with bifrost,
krb5_admind, kpasswd, snapshot support, and the supporting admin tooling.
The current published image is:
ghcr.io/chapeltech/asgard-kdc:sha-280c050b28b7
Use the included compose file:
docker-compose.yml
If the GitHub Container Registry package is public:
docker pull ghcr.io/chapeltech/asgard-kdc:sha-280c050b28b7Then pull through compose:
docker compose pullexport ASGARD_IMAGE=ghcr.io/chapeltech/asgard-kdc:sha-280c050b28b7
export ASGARD_HOSTNAME=kdc.example.comASGARD_HOSTNAME must resolve to the Docker host from clients. Use real
host naming, or add it to client /etc/hosts.
Start the appliance:
docker compose up -d kdcInitialize the realm inside the running container:
docker compose exec kdc /cmd setup-master EXAMPLE.COMThe container starts its services after initialization completes.
docker compose exec kdc /cmd create-admin admin
docker compose exec kdc krb5_admin -l modify admin attributes-=needchangeThe first command prints the generated admin password.
docker compose exec kdc /cmd print-krb5-conf > krb5.conf
docker compose exec kdc /cmd print-ca > ca-pub.pemInstall krb5.conf on clients and make sure the hostname configured in
ASGARD_HOSTNAME resolves to the Docker host.
View logs:
docker compose logs -f kdcStop:
docker compose stopStart again:
docker compose startRemove the container:
docker compose downWith the stock docker-compose.yml, removing the container removes the initialized
realm state too. Use stop and start for normal operation.