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 following steps to run docker with floating license.

  • Setup 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 above command generates lnx64.o folder.

    • Run 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 cannot execute: required file not found error then try with below simlink 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 above command prints 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 above logs, then it confirms that license management tool runs correctly with floating license.

  • Run docker on client machine which can access floating license from 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.2_0612 "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.2_0612 "bash"
    

    Note

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

    The above command runs the docker and you can proceed with model compilation inside the docker.