Skip to content

Latest commit

 

History

History
60 lines (52 loc) · 2.23 KB

README.md

File metadata and controls

60 lines (52 loc) · 2.23 KB

Run Wrap4D project within docker container.

To run wrap cmd directly from terminal you can use this massive command.

docker run --mount 'type=volume,volume-driver=local,dst=/nfs/common,volume-opt=type=nfs,volume-opt=device=:/Public,"volume-opt=o=addr=192.168.0.3,vers=4,hard,timeo=600,rsize=1048576,wsize=1048576,retrans=2"' -e WRAP4DCMD_COMMON_DIR=/nfs/common -e WRAP4DCMD_LICENSE=7307@192.168.0.13 -e XDG_RUNTIME_DIR=/tmp/runtime-root -i --entrypoint /usr/bin/xvfb-run debug-r3dsnode:2022.6.1 -s '+extension GLX +render' '/opt/R3DS/Node/WrapCmd.sh' compute -s $start_frame -e $end_frame /nfs/common/WrapProjects/opengl.wrap

Let's see what is going on step-by-step.

Mount Volume

In our office we use nfs to storage all the data in "Public" directory, which connected to all nodes. You can create custom docker volume or use this flag.

NFS (Recommended)

--mount \
       'type=volume, \
	volume-driver=local, \ 
	dst=/nfs/common, \
	volume-opt=type=nfs, \
	volume-opt=device=:/Public, \
       "volume-opt=o=addr=nfs_ip,vers=4,hard,timeo=600,rsize=1048576,wsize=1048576,retrans=2"'

CIFS

--mount " \
         'type=volume,target=/nfs/common, \
          volume-driver=local, \
          volume-opt=type=cifs, \
          volume-opt=device=//nfs_ip/Public, \
          \"volume-opt=o=addr=nfs_ip, \
          username=user,password=password, \
          file_mode=0777,dir_mode=0777\"'\ 

Environment variables

Only last variable is required all of other variables are optional and can be configured manually if you are using Rush.

  	-e WRAP4DCMD_GALLERY_DIR=/gallery_path \
	-e WRAP4DCMD_COMMON_DIR=/common_dir_path \
	-e WRAP4DCMD_LICENSE=7307@lic_server_ip \ 
	-e RUSH_ADDRESS=http://rush_address:7308 \
  	-e XDG_RUNTIME_DIR=/tmp/runtime-root -i \

Entrypoint

This entrypoint creates opengl context before wrap have been started.

--entrypoint /usr/bin/xvfb-run debug-r3dsnode:2022.6.1 -s '+extension GLX +render' \

Start Wrap project

'/opt/R3DS/Node/WrapCmd.sh' compute -s $start_frame -e $end_frame /nfs/common/WrapProjects/opengl.wrap

Here it's just WrapCmd command in the format:

  $wrap_cmd_path compute {-s $start_frame -e $end_frame} $wrap_project_path