Sign inSign up

softingindustrial/floating-license-server

By softingindustrial

•Updated over 4 years ago

Containerized Floating License Server for Softing edgeConnector Products

Image
0

5.2K

softingindustrial/floating-license-server repository overview

ā āš ļø Deprecated – Use softingindustrial/license-server⁠

This Docker image is deprecated and is no longer actively maintained.

šŸ‘‰ Please use the successor image: https://hub.docker.com/r/softingindustrial/license-server⁠

⁠Impact

  • āŒ No new versions will be released
  • āŒ No bug fixes or security updates will be provided
  • āœ… Existing images remain available for download

⁠Softing License Server

⁠Reference

This product is developed by Softing⁠.

Additional information and examples about how to activate other Softing products can be found at GitHub⁠.

⁠Product Information

Softing License Server is used to host network software licenses (also called floating licenses or shared licenses) that are installed locally on an individual users' machine. The network licenses can be shared among many users and/or applications.

Softing License Server fulfills requests to run a network application if the required license is available. When the network license is released (for example, a user closes the application), the license is moved to the license server's available license pool and is made available for other checkout requests.

⁠Run the Container

To start the container, run the following command. The image will be pulled and the container started.

docker container run\
    -it\
    --name licsrv\
    -p 6200:6200\
    --volume $(pwd)/license_files:/licsrv/licenses\
    softingindustrial/floating-license-server

NOTE: Replace licsrv with the name of the container used in a real-world scenario.

⁠Retrieve the license server Host information

To activate licenses, the Host Id provided by the license server must be used. The Host Id is specific to the host on which the server is run.

Steps to get the Host Id from the containerized licensing server:

  1. From container logs:

    docker container logs licsrv
    

    Output:

    ...
    [2021-05-26 13:38:30] HostId: a476a2de-ca10-11e9-80d8e98fa9baf9c85
    ...
    

    The line above shows the Host Id information.

  2. From log file: the command docker exec -it licsrv cat /licsrv/lmx-serv.log will show the same output.

⁠Steps to activate a license using Softing's web interface
  1. Log in to Softing web portal⁠

  2. Navigate to Licenses->Register License

  3. Fill in the purchased license activation key in the License key field

  4. Fill in the Host Id information retrieved as indicated in the previous sub-chapter

  5. Click Register License

  6. Download and store the generate *.lic file

⁠Activating newly copied licenses

The downloaded *.lic files need to be copied to the mounted volume of the Docker container. This is how the license server will use them, stored in the persistent volume.

Once the new license files are copied to the shared volume, the container needs to be restarted in order for the new files to be activated.

docker restart licsrv

⁠Technical Data

NameValue
EnvironmentUbuntu 18.04 LTS
Port6200
Licenses Volume/licsrv/licenses
Config File/licsrv/lmx-serv.cfg
Log File/licsrv/lmx-serv.log
Addresshttp://ip_of_host:port
⁠Logs

To view the logs of the Docker container run the following commands:

  1. If the container is run with the -it (interactive) option, it will display all standard output and error messages in the terminal. If it is run with the -d option (daemon), the output logs can be retrieved via a docker command:

    docker container logs licsrv
    

    The output should look similar to the following, in both cases (interactive and daemon):

    [2022-05-11 05:47:20] LM-X License Server v5.2.3 build 13512bee on softing_licsrv (Linux_x64)
    [2022-05-11 05:47:20] Copyright (C) 2002-2022 X-Formation. All rights reserved.
    [2022-05-11 05:47:20] Website: https://www.lm-x.com https://www.x-formation.com
    [2022-05-11 05:47:20] License server has pid 1.
    [2022-05-11 05:47:20] Serving licenses for vendor SOFTING.
    [2022-05-11 05:47:20] WARNING: It is not recommended to run license server as root.
    [2022-05-11 05:47:20]
    [2022-05-11 05:47:20] License server using TCP IPv4 port 6200.
    [2022-05-11 05:47:20] License server using TCP IPv6 port 6200.
    [2022-05-11 05:47:20] License server using UDP IPv4 port 6200.
    [2022-05-11 05:47:20] Reading licenses...
    [2022-05-11 05:47:20] License file(s):
    [2022-05-11 05:47:20] /licsrv/licenses/lic3.lic
    [2022-05-11 05:47:20] Log file path: /licsrv/lmx-serv.log
    [2022-05-11 05:47:20] Log to stdout: Yes
    [2022-05-11 05:47:20] Log format: Normal
    [2022-05-11 05:47:20] Configuration file path: /licsrv/config/lmx-serv.cfg
    [2022-05-11 05:47:20] Serving following features:
    [2022-05-11 05:47:20] Advanced-1-Initial (v2023.509) (1 license(s)) license type: additive
    [2022-05-11 05:47:20]
    [2022-05-11 05:47:20] HostId: a476a2de-ca10-11e9-80d8-98fa9baf9c86
    [2022-05-11 05:47:20] To administrate the license server go to your enduser directory and run the License Server Client.
    [2022-05-11 05:47:20] Ready to serve...
    
  2. In the output above the path to the licensing server log file. The command docker exec -it licsrv cat /licsrv/lmx-serv.log will show the same output, extracting the content of the log file from the container.

⁠Volumes

License files

The Docker image from which the container is created is configured with a default internal Docker volume of /licsrv/licenses, into which the license files can be copied for the server to activate.

This internal volume can be mapped to the host machine in two ways:

  • Docker Volumes⁠:

    docker container run\
        --name licsrv\
        -p 6200:6200\
        --volume licenses:/licsrv/licenses\
        softingindustrial/floating-license-server
    

    In the second line from the bottom a Docker volume is mapped to the internal container volume. If the volume does not exist, it will be created.

    A Docker volume can be created by docker volume create --name licenses beforehand, if needed.

    To copy files to the volume execute the following (files will be stored in an internal Docker directory on the host):

    docker cp ./*.lic licsrv:/licsrv/licenses
    
  • Docker Bind Mounts⁠:

    docker container run\
        --name licsrv\
        -p 6200:6200\
        --volume $(pwd)/softing/licenses:/licsrv/licenses\
        softingindustrial/floating-license-server
    

    To copy files to the volume the license files need to be copied normally to the specified directory (i.e.: $(pwd)/softing/licenses in the example).

    In the second line from the bottom a Docker bind mount is mapped to the internal container volume. The full path must be given to the directory on the host, which will be mounted as a bind mount.

Server configuration file

Similarly to the license files volumes, the container provides a way to expose the configuration file as well.

The default volume path for this is /licsrv/config and the file name is lmx-serv.cfg.

A number of parameters can be configured, based on the official X-Formation documentation⁠.

The container must be restarted in order for the changes to take effect.

Mounting the volume should be done by using Docker Volumes:

  • create volume: docker volume create config_volume
  • start the container with the created volume:
    docker container run\
       --name licsrv\
       -p 6200:6200\
       --volume licenses:/licsrv/licenses\
       --volume config_volume:/licsrv/config\
       softingindustrial/floating-license-server
    

NOTE: Use only volumes for the configuration file, not bind mounts. The latter will overwrite the internal container volume, making the configuration file inaccessible.

To edit the configuration file after the volume has been mapped, it can be found in the following path: /var/lib/docker/volumes/config_volume/_data/lmx-serv.cfg, where config_volume is the name of the Docker volume created. This path may change depending on host environment.

Tag summary

Content type

Image

Digest

Size

39.6 MB

Last updated

over 4 years ago

docker pull softingindustrial/floating-license-server