ZINC22:Singularity: Difference between revisions
Line 39: | Line 39: | ||
export SINGULARITY_BINDPATH=$INPUT,$OUTPUT,$LOGGING,$(dirname $OE_LICENSE),$(dirname $CHEMAXON_LICENSE_URL) | export SINGULARITY_BINDPATH=$INPUT,$OUTPUT,$LOGGING,$(dirname $OE_LICENSE),$(dirname $CHEMAXON_LICENSE_URL) | ||
singularity run build3d.simg | singularity run build3d.simg | ||
You may also want to use a working directory that isn't in the default singularity bindings (i.e default root directories like /tmp, /dev/shm), for example a /scratch directory, you would do the following: | |||
... | |||
export SHRTCACHE=/scratch | |||
export SINGULARITY_BINDPATH=$SINGULARITY_BINDPATH,$SHRTCACHE | |||
singularity run build3d.simg | |||
SHRTCACHE specifies the base working directory for the script. | |||
[[Category:ZINC22]] | [[Category:ZINC22]] | ||
[[Category:DOCK 3.8]] | [[Category:DOCK 3.8]] |
Revision as of 21:33, 9 February 2021
Info on using ZINC-22 3D building in singularity.
how to use the singularity image
ok, the image is @ /nfs/home/xyz/soft/build3d.img so, to run it, do the following:
LICENSE_DIR= ((((whatever you want it to be)))) export OE_LICENSE=$LICENSE_DIR/oe-license.txt (((((or whatever it is called))))) export CHEMAXON_LICENSE_URL=$LICENSE_DIR/jchem-license.cxl
export OUTPUT= ((((some directory on the nfs where output is going)))) export INPUT= ((((some directory on nfs where input resides)))) export LOGGING= ((((wherever logs should go)))) export SGE_TASK_ID=((((whatever you want, the script will evaluate the SGE_TASK_ID'th entry in $(find -type f $INPUT | sort) )))) export SGE_JOB_ID=((((again, whatever you want. Just a label for the job))))
export SINGULARITY_BINDPATH=$LICENSE_DIR,$OUTPUT,$INPUT
singularity run build3d.img
how to build the singularity image
BKS uses centos7 for our operating system, which can cause issues when building with singularity, particularly if you are building on ubuntu. See https://singularity.lbl.gov/building-centos-image for more details.
The gist is, our singularity image needs to be built on a centos machine.
To build our image, simply pull the necessary files from dockerhub (link not yet here), chdir to the directory you just cloned and run the following command:
singularity build build3d.simg Singularity3D
The resulting build3d.simg can be used to run 3d building jobs with singularity.
export INPUT export OUTPUT export LOGGING export OE_LICENSE export CHEMAXON_LICENSE_URL export JOB_ID export SGE_TASK_ID export SINGULARITY_BINDPATH=$INPUT,$OUTPUT,$LOGGING,$(dirname $OE_LICENSE),$(dirname $CHEMAXON_LICENSE_URL) singularity run build3d.simg
You may also want to use a working directory that isn't in the default singularity bindings (i.e default root directories like /tmp, /dev/shm), for example a /scratch directory, you would do the following:
... export SHRTCACHE=/scratch export SINGULARITY_BINDPATH=$SINGULARITY_BINDPATH,$SHRTCACHE singularity run build3d.simg
SHRTCACHE specifies the base working directory for the script.