# Docker Swarm Container Licensing

**URL:** <https://forum.inductiveautomation.com/t/docker-swarm-container-licensing/91030>\
**Category:** Ignition\
**Tags:** docker\
**Created:** [May 28, 2024, 7:05pm UTC](https://forum.inductiveautomation.com/t/docker-swarm-container-licensing/91030 "2024-05-28T19:05:16Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Charles2044](https://avatars.discourse-cdn.com/v4/letter/c/b19c9b/32.png) [@Charles2044](https://forum.inductiveautomation.com/u/Charles2044)\
**Post date:** [May 28, 2024, 7:05pm UTC](https://forum.inductiveautomation.com/t/docker-swarm-container-licensing/91030/1 "2024-05-28T19:05:16Z")

</div>

We are attempting to leverage Docker Swam and Portainer for High availability. We are using a 6-character key and can persist the license for one container as long as we stop and start that one container all is good. However, when we stop instance 1 and launch instance 2 (Existing on another server) the licensing fails. I believe we use a GlusterFS, and bind the /bin directory to persist the data across the swarm. - I am not an IT guru so I may have this described incorrectly.

1. Is this configuration supported?

2. Does this configuration require an 8-character key so the key and activation can be passed as Environment variables?

3. Is there a cost associated with converting a 6-character key to 8-character key

Thanks in advance for any guidance you can provide.

---

<div class="post-metadata">

**Author:** ![kcollins](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kcollins/32/19646_2.png) [@kcollins](https://forum.inductiveautomation.com/u/kcollins)\
**Post date:** [May 28, 2024, 7:49pm UTC](https://forum.inductiveautomation.com/t/docker-swarm-container-licensing/91030/2 "2024-05-28T19:49:34Z")

</div>

You'll need to use an 8-key leased activation license key for this to work reliably. That will require egress connectivity to `licensing.inductiveautomation.com` over `443/tcp` (the requests are just standard `https`).

Application of the license key and activation token would then be done by creating a _secret_ for at least the activation token (the "private" portion an 8-digit key) and mapping that into the service definition via the `IGNITION_ACTIVATION_TOKEN_FILE` (pointing to the path where the secret is mounted, e.g. `/run/secrets/ignition-activation-token`) and `IGNITION_LICENSE_KEY` (containing the 8-digit key string value, e.g. `XXXX-XXXX`) environment variables.
