Running LexFloatServer in Docker

Hello. We’re considering running the LexFloatServer program inside a docker image, as that fits best with how our services are deployed.

Is there any specific considerations or issues that would result from this?

In addition, where does it store persistent data? I couldn’t find that information in the documentation.

Hi,

One may feel tempted to run LexFloatServer in a Docker container as it simplifies deployment when using Docker Compose or Kubernetes.

But for licensing to work properly, LexFloatServer itself needs to be node-locked to a machine, otherwise your customers can activate multiple LexFloatServer instances using a single license. When you run any app (in this case LexFloatServer) on a VM or in a container you actually risk LexFloatServer being run on multiple instances as VMs can be perfectly cloned and containers don’t give enough host access to generate a quality fingerprint and no fingerprint at all if the container is running inside a VM.

Hence, it is important to run LexFloatServer on the actual host machine for max security to prevent piracy.

Hello, adnan-kamili, thanks for your answer.

I understand your concern, but this is a pretty strong requirement for us at the moment.
We might change that, or we might find the extra risk acceptable for our use case.

What we’re looking for is practical information both on running the software in a docker container, and how much effort it would be to clone it. I assume that the server generates an unique id on startup that would also need to be cloned, so it wouldn’t just be to do a new install and then existing license key/ response would work on that?

Edit: Also, would it be some files or devices that could be mapped in to the container that would increase the complexity of cloning it?

Suppose you create an on-premise floating license which allows one activation and say 100 floating clients.

Your customer activates the LexFloatServer on machine 1 at port 8080. Now if your customer tries running another LexFloatServer instance on the same machine at a different port to server 100 more floating clients, then LexFloatServer will detect this using multi-process detection and will prevent this. But if you run LexFloatServer inside Docker, your customer can spin up as many LexFloatServer instances as they want inside a container on the same machine at different ports and license as many floating clients as they want.