[ccp4-cloud@rockylinux ~]$ vi /apps/ccp4-cloud/FE/config.json
{
"FrontEnd" : {
"description" : {
"id" : "unique location id",
"name" : "CCP4 Cloud at your location",
"icon" : "images_com/setup-harwell.png"
},
"protocol" : "http",
"host" : "localhost",
"port" : 8081,
"externalURL" : "http://rockylinux/ccp4cloud/",
"reportURL" : "http://rockulinux/ccp4cloud/",
"exclusive" : true,
"stoppable" : false,
"exclude_tasks" : [],
"licensed_tasks" : ["TaskArpWarp"],
"fsmount" : null,
"userDataPath" : "/apps/ccp4-cloud/disk1/users",
"storage" : "/apps/ccp4-cloud/disk1/projects",
"update_rcode" : 212,
"projectsPath" : {
"disk1" : { "path" : "/apps/ccp4-cloud/disk1/projects",
"type" : "volume",
"diskReserve" : 10000,
"dirName" : "ccp4_cloud_home"
}
},
"jobs_safe" : {
"path" : "/apps/ccp4-cloud/job_safe",
"capacity" : 10
},
"facilitiesPath" : "/apps/ccp4-cloud/disk1/facilities",
"ICAT_wdsl" : "https://icat02.diamond.ac.uk/ICATService/ICAT?wsdl",
"ICAT_ids" : "https://ids01.diamond.ac.uk/ids",
"auth_software" : {
"gphl-buster" : {
"desc_software" : "Global Phasing Ltd. Software Suite",
"icon_software" : "task_buster",
"desc_provider" : "Global Phasing Ltd.",
"icon_provider" : "org_gphl",
"auth_url" : "https://www.globalphasing.com/cgi-bin/ccp4_licence.cgi?reqid=$reqid&addr=1.2.3.4&cburl=$cburl",
"__auth_url" : "https://arpwarp.embl-hamburg.de/api/maketoken/?reqid=$reqid&addr=1.2.3.4&cburl=$cburl"
}
},
"bootstrapHTML" : "bootstrap/jscofe.html",
"maxRestarts" : 100,
"fileCapSize" : 500000,
"regMode" : "admin",
"ration" : {
"storage" : 5000,
"cpu_day" : 24,
"cpu_month" : 240
},
"cloud_mounts" : {
"Tutorials" : "/data1/opt/cloud_storage/cloud_tutorials",
"CCP4 Examples" : ["$CDEMODATA","$CEXAM"],
},
"logflow" : {
"chunk_length" : 10000,
"log_file" : "/apps/ccp4-cloud/FE/logs/node_fe"
}
},
"NumberCrunchers" : [
{
"serNo" : 0,
"name" : "nc-1",
"in_use" : true,
"protocol" : "http",
"host" : "rockylinux/ccp4cloud-nc1",
"port" : 0,
"externalURL" : "http://rockylinux/ccp4cloud-nc1",
"exclusive" : true,
"stoppable" : false,
"fsmount" : null,
"capacity" : 16,
"max_nproc" : 4,
"exclude_tasks" : [
"TaskAmple"
],
"fasttrack" : 1,
"storage" : "/apps/ccp4-cloud/NC/",
"jobs_safe" : {
"path" : "/apps/ccp4-cloud/job_safe",
"capacity" : 10
},
"exeType" : "SHELL",
"__exeType" : "SGE",
"__exeData" : ["-cwd","-V","-b","y","-q","all.q","-notify"],
"jobCheckPeriod" : 2000,
"sendDataWaitTime" : 1000,
"maxSendTrials" : 10,
"jobRemoveTimeout" : 10000,
"maxRestarts" : 100,
"fileCapSize" : 500000,
"logflow" : {
"chunk_length" : 10000,
"log_file" : "/apps/ccp4-cloud/NC/logs/node_nc"
}
}
],
"Emailer" : {
"type" : "none"
}
}
[ccp4-cloud@rockylinux ~]$[ccp4-cloud@rockylinux ~]$ grep -v -e '^\s*#' -e '^\s*$' /apps/ccp4-cloud/FE/start-fe.sh
prefix=/apps/ccp4-cloud/FE
ccp4_dir=/apps/ccp4-8.0
source $ccp4_dir/bin/ccp4.setup-sh
server_dir=$CCP4/share/jscofe
export CDEMODATA=`ccp4-python -c "import sysconfig; print(sysconfig.get_path('purelib'))"`/ccp4i2/demo_data
cd $server_dir
function start_fe() {
node ./js-server/fe_server.js ${prefix}/config.json
test $? -eq 212 && echo action requested
}
start_fe >> ${prefix}/logs/node_fe.log 2>> ${prefix}/logs/node_fe.err &
[ccp4-cloud@rockylinux ~]$[ccp4-cloud@rockylinux ~]$ cat /apps/ccp4-cloud/NC/config.json
{
"NumberCrunchers" : [
{
"serNo" : 0,
"name" : "nc-1",
"in_use" : true,
"protocol" : "http",
"host" : "localhost",
"port" : 8083,
"externalURL" : "http://rockylinux/ccp4cloud-nc1",
"exclusive" : true,
"stoppable" : false,
"fsmount" : null,
"capacity" : 16,
"max_nproc" : 4,
"exclude_tasks" : [
"TaskAmple"
],
"fasttrack" : 1,
"storage" : "/apps/ccp4-cloud/NC/",
"jobs_safe" : {
"path" : "/apps/ccp4-cloud/job_safe",
"capacity" : 10
},
"exeType" : "SHELL",
"__exeType" : "SGE",
"__exeData" : ["-cwd","-V","-b","y","-q","all.q","-notify"],
"jobCheckPeriod" : 2000,
"sendDataWaitTime" : 1000,
"maxSendTrials" : 10,
"jobRemoveTimeout" : 10000,
"maxRestarts" : 100,
"fileCapSize" : 500000,
"logflow" : {
"chunk_length" : 10000,
"log_file" : "/apps/ccp4-cloud/NC/logs/node_nc"
}
}
],
"Emailer" : {
"type" : "none"
}
}
[ccp4-cloud@rockylinux ~]$[ccp4-cloud@rockylinux ~]$ grep -v -e '^\s*#' -e '^\s*$' /apps/ccp4-cloud/NC/start-nc.sh
prefix=/apps/ccp4-cloud/NC
ccp4_dir=/apps/ccp4-8.0
source $ccp4_dir/bin/ccp4.setup-sh
server_dir=$CCP4/share/jscofe
export OMP_NUM_THREADS=1
cd $server_dir
node ./js-server/nc_server.js ${prefix}/config.json 0 \
>> ${prefix}/logs/node_nc.log 2>> ${prefix}/logs/node_nc.err &
[ccp4-cloud@rockylinux ~]$「/etc/httpd/conf.d/ccp4cloud.conf」
<Proxy http://127.0.0.1:8081/*>
Allow from all
</Proxy>
ProxyRequests Off
ProxyPass /ccp4cloud http://localhost:8081
SetOutputFilter INFLATE;proxy-html;DEFLATE
ProxyHTMLURLMap http://localhost:8081 /ccp4cloud
LogLevel Info
ProxyPassReverse /ccp4cloud http://localhost:8081
ProxyPass /ccp4cloud-nc1 http://localhost:8083
ProxyHTMLURLMap http://localhost:8083 /ccp4cloud-nc1
ProxyPassReverse /ccp4cloud-nc1 http://localhost:8083