---
title: Charmhub | Deploy Hockeypuck K8S Charm using Charmhub - The Open Operator Collection
description: Deploy the latest version of Hockeypuck K8S Charm as a Kubernetes Operator
  on any cloud.
url: https://charmhub.io/hockeypuck-k8s/docs/how-to-manage-admin-keys
---

# Hockeypuck K8S Charm

[Canonical IS DevOps](https://charmhub.io/publisher/canonical-is-devops "View all packages from Canonical IS DevOps")

* [Canonical IS DevOps](https://charmhub.io/publisher/canonical-is-devops "View all packages from Canonical IS DevOps")

Platform:

2.2/stable 20

```
juju deploy hockeypuck-k8s --channel 2.2/stable
```

[Learn to deploy on juju >](https://juju.is/docs/juju/manage-applications)

---

#### Contacts

##### Maintainers

+ [Launchpad Team](https://launchpad.net/~canonical-is-devops)

* [Submit a bug](https://github.com/canonical/hockeypuck-k8s-operator/issues)

---

Share your thoughts on this charm with the community on discourse.

[Join the discussion](https://discourse.charmhub.io/)

# Manage admin keys in Hockeypuck

Admin keys are required by Hockeypuck to perform [privileged operations](https://hockeypuck.io/admin.html). This includes submitting signed requests over HTTP to replace or delete public keys from the keyserver. By default, the [hockeypuck-k8s](https://charmhub.io/hockeypuck-k8s) charm takes care of creating an admin key on startup, uploading it to the keyserver and setting the admin key fingerprint field in the Hockeypuck [configuration file](https://hockeypuck.io/configuration.html#:~:text=1.1.4.%20Remote%20administration). This ensures that the charm is ready for administrative operations without any manual setup.

However, you can supplement the default admin key by setting the `admin-keys` configuration value in the Hockeypuck charm with a custom admin key:

```
juju config hockeypuck-k8s admin-keys=$ADMIN_FINGERPRINT
```

For Hockeypuck to identify this fingerprint as an admin key, you must also upload the admin key to the keyserver:

```
# store the public key of admin in a file
gpg --armor --export $ADMIN_FINGERPRINT > public_key.asc

# upload the admin public key to the key server
curl -X POST -H "Content-Type: application/x-www-form-urlencoded" --data-urlencode "keytext=$(cat public_key.asc)" http://$HOCKEYPUCK_URL/pks/add
```

## [Use custom admin key for manual actions](https://charmhub.io/hockeypuck-k8s/docs/how-to-manage-admin-keys#p-37630-use-custom-admin-key-for-manual-actions)

The `block-keys` action provided by the Hockeypuck charm always uses the default admin key created at startup to perform administrative tasks. If you wish to perform manual administration using your custom admin key, you must follow the [Hockeypuck server administration guide](https://hockeypuck.io/admin.html).

---
