Date: Fri, 29 Mar 2024 01:25:55 -0500 (CDT) Message-ID: <1400833171.280.1711693555646@os-confluence.ncsa.illinois.edu> Subject: Exported From Confluence MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_Part_279_1964542047.1711693555645" ------=_Part_279_1964542047.1711693555645 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Location: file:///C:/exported.html
Clone the Clowder source to your local machine:
git clone = https://<USERNAME>@opensource.ncsa.illinois.edu/bitbucket/scm/cats/cl= owder.git
After you checkout the Clowder source, simply run the following command = to bring up the Clowder stack under Docker Compose:
docker-= compose up -d
If you do not have the docker-compose binary natively installed, you can= create an alias to run Compose under Docker instead:
alias d= ocker-compose=3D'docker run -it --rm --privileged -v $HOME/.docker:/root/.d= ocker -v /var/run/docker.sock:/var/run/docker.sock -v $(pwd):/workdir -w /w= orkdir docker/compose:1.15.0'
You should then be able to run the same com= mand to bring up the Clowder stack:
docker-= compose up -d
To compile Clowder you will need to have at least version 1.7 of JAVA. V= ersion 1.8 will work as well.
On Windows and Mac, the JNotify library is required and not included wit= h Java 1.8 64bit - this will result in degraded (e.g. extremely sluggish na= vigation) performance when debugging your developer instance.
The following message will display in the development console in Intelli= J if playframework is unable to locate JNotify in this case:
Cannot load the JNotify native library (no jnotify_64bit in java=
.library.path)
Play will check file changes for each request, so expect degraded reloading=
performace.
JNotify Documentation can be found here: http://jnotify.s= ourceforge.net/
Download JNotify here: https://sourceforg= e.net/projects/jnotify/files/
Simply paste jnotify_64bit.dll to the path\to= \jdk1.8\bin folder.
Create a new folder called "jnotify" in the "lib" directory: e.g. <= span class=3D"s1" style=3D"letter-spacing: 0.0px;">/Library/Java/JavaVirtua= lMachines/jdk1.8.0_77.jdk/Contents/Home/lib/jnotify
Next, paste jnotify-0.94.jar, libjnot= ify.so, and libjnotify.jnilib to the pa= th/to/jdk1.8/lib/jnotify folder.
Finally, add the following argument (adjusted with your correct path) to= the JVM arguments in your Run Configuration for Clowder in IntelliJ:
-Djava.library.path=3D/Library/Java/JavaVirtualMachines/jdk1.8.0_77.jd= k/Contents/Home/lib/jnotify
In IntelliJ, often the default memory constraints are too low for Scala = projects.
From the top menu, choose Help =E2=86=92 Edit Custom VM Options and=
find the -Xmx
flag.
This is your JVM's maximum memory heap size, which defaulted to 750MB fo= r me.
Upping this value will decrease the amount of garbage collection necessa= ry during build, and can therefore increase your overall build speed.
There are still a few things missing bef= ore Clowder will run properly
MongoDB: docker run -it -d --name=3D= mongo -v $(pwd)/mongo:/data/db -p 27017:27017 mongo:3.4
For RabbitMQ plugin (extractors): do= cker run -itd --name=3Drabbit -p 5672:5672 -p 15672:15672 rabbitmq:manageme= nt-alpine
For Elasticsearch plugin (search ind= exing): docker run -itd --name=3Delasticsearch -p 9200:9200 -p 9300:9300 el= asticsearch:2
For ToolManager plugin (analysis env= ironments): docker run -itd --name=3Dtoolserver -p 8082:8082 clowder/toolse= rver
For pyCSW plugin (?): docker build -= t clowder:pycsw . && doc= ker run -it -d --name pyc= sw -p 80:8000 clowder/pycsw
For Geoserver plugin (QGIS analysis)= : ??
docker run -it --rm --net=3Dhost -e RABBITMQ_URI=3D"amqp://guest:guest= @localhost/%2f" -e REGISTRATION_ENDPOINTS=3D"http://141.142.60.193:9000/api/extractors?key=3Dr1ek3rs" -v $(p= wd):/home/clowder clowder/extractors-image-metadata