Docker Run Command with Floating License

Docker Run Command with Floating License#

A Floating License resides on a network server and allows applications to check out a license when they are invoked. Use of a product is restricted to a specific number of simultaneous users up to the number of license seats purchased.

Refer to the following steps to run Docker with a floating license.

  • Set up server machine with license manager.

    • Download floating license by following steps mentioned in Obtaining License section.

    • Download License Management Tool and unzip it.

      $ unzip linux_flexlm_v11.17.2.1.zip
      

      The preceding command generates the lnx64.o folder.

    • Run the license management tool

      $ cd lnx64.o/
      # Provide write permissions to utilities
      $ chmod 777 *
      $ ./lmgrd -c <path_to_floating_license>/Xilinx.lic -l ./lmgrd_server.log
      

      Note

      If you get the cannot execute: required file not found error, then try the following symlink command: $ sudo ln -s /lib64/ld-linux-x86-64.so.2 /lib64/ld-lsb-x86-64.so.3

    • Check the status of lmgrd application.

      ./lmutil lmstat -a -c <path_to_floating_license>/Xilinx.lic
      

      The preceding command prints the following logs with license flags.

      xilinxd: UP v11.17.2
      
      Feature usage info:
      
      Users of AIEMLbuild:  (Total of 1 license issued;  Total of 0 licenses in use)
      
      Users of AIEMLsim:  (Total of 1 license issued;  Total of 0 licenses in use)
      
      Users of AIEbuild:  (Total of 1 license issued;  Total of 0 licenses in use)
      
      Users of AIEsim:  (Total of 1 license issued;  Total of 0 licenses in use)
      
      Users of MEbuild:  (Total of 1 license issued;  Total of 0 licenses in use)
      
      Users of MEsim:  (Total of 1 license issued;  Total of 0 licenses in use)
      
      Users of AIEMLv2sim:  (Total of 1 license issued;  Total of 0 licenses in use)
      
      Users of AIEMLv2build:  (Total of 1 license issued;  Total of 0 licenses in use)
      

      If you get the preceding logs, it confirms that the license management tool runs correctly with the floating license.

  • Run Docker on a client machine that can access the floating license from the server machine.

    # docker run command:
    # docker run -it --rm --network host -e LM_LICENSE_FILE=PORT_NUMBER@LICENSE_SERVER_IP -v /yourDir:/Model amdih/vitis-ai:versal-2ve-release_v6.3_0924 "bash"
    # Check the port number in Xilinx.lic file
    # If LICENSE_SERVER_IP=192.168.29.242, PORT_NUMBER=2100, then the command would be:
    docker run --ulimit stack=-1:-1 -it --rm --network host -e LM_LICENSE_FILE=2100@192.168.29.242 -v /yourDir:/Model amdih/vitis-ai:versal-2ve-release_v6.3_0924 "bash"
    

    Note

    You can refer to the license file to find the port number (2100) and use it in the command as needed.

    The preceding command runs the Docker container, and you can proceed with model compilation inside the container.