Installation and Setup V3
Inhaltsverzeichnis
Standalone
All-in-one server mainly intended for exploration, testing and "to-go"-scenarios.
Release Files
WebCts2LE-embedded-jetty.zip: CTS2-LE jetty server
Required Software
- Java 8
Installation & Running
- unzip
WebCts2LE-embedded-jetty.zipto a directory (denoted by<W>in the following) - go to directory
<W> - start command:
./bin/startup.sh -port <port>- Windows Powershell: .\bin\startup.bat -port <port>
- shutdown command:
./bin/shutdown.sh <port>- Windows Powershell: ctrl-c
- admin navigation ui:
http://<host>:<port>/WebCts2LE
Docker
Let <DI> be the docker image name. Run the image with
docker run -dit --restart=always --name=<name> --mount source=<volume>,target=/etc/webcts2le/inst/cts2lef-resources/resources-custom -p <port>:9090 <DI>- on windows git bash: you have to exec before: docker() { (export MSYS_NO_PATHCONV=1; "docker.exe" "$@"); }
where
<name>is the container name<volume>is the volume name (it will be created if it does not exist and it will be reused !)<port>is the delivered port (cf. Installation & Running above)
External Storage/Index Backends
This version is intended for use in environments where the data backend can run on separate machines.
Release Files
fuseki-cts2le.zip: config files for fusekisolr-cts2le.zip: config files and blank index directory for solrWebCts2LE-embedded-jetty.zip: CTS2-LE jetty servercts2le-3-command-bulk.jar: CLI for bulk loadingntriples-collection.zip: standard terminologies for bulk loading
Required Software/Server
- Java 8
Fuseki Installation & Running
- unzip
fuseki-cts2le.zipto a directory (denoted by<F1>in the following) - unzip
apache-jena-fuseki-3.8.0.zipfromhttps://jena.apache.org/download/(the extracted directoryapache-jena-fuseki-3.8.0is denoted by<F2>in the following) - go to directory
<F2> - run
./fuseki startand./fuseki stopsubsequently (in order to let directory<F2>/runbe generated) - copy
<F1>/cts2le.ttlto<F2>/run/configuration - copy
<F1>/log4j.propertiesto<F2>/run - start command:
./fuseki start- Windows Powershell: .\fuseki-server.bat
- shutdown command:
./fuseki stop- Windows Powershell: ctrl-c
Solr Installation & Running
- unzip
solr-cts2le.zipto a directory (denoted by<S1>in the following) - unzip
solr-7.6.0.zipfromhttp://lucene.apache.org/solr/downloads.html(the extracted directorysolr-7.6.0is denoted by<S2>in the following) - go to directory
<S2> - start command:
./bin/solr start -s <S1> - shutdown command:
./bin/solr stop -all
Installation & Running
- unzip
WebCts2LE-embedded-jetty.zipto a directory (denoted by<W>in the following) - edit file
<W>/CTS2LE_resources/resources-custom/setting.json. The following fragment shows the relevant lines to adapt:
store: 'fuseki',
storePath: 'http://localhost:3030/cts2le',
luceneMode: 'remote',
luceneIndexPath: 'http://localhost:8983/solr/cts2le',
Be sure that
store='fuseki' andluceneMode='remote' andhost:portof storePath and luceneIndexPath are set to the server endpoints
!!! WebCts2LE does not not run properly if the fuseki or solr endpoint are not running.
- go to directory
<W> - start command:
./bin/startup.sh -port <port>- Windows Powershell: .\bin\startup.bat -port <port>
- shutdown command:
./bin/shutdown.sh <port>- Windows Powershell: ctrl-c
- admin navigation ui:
http://<host>:<port>/WebCts2LE
(Bulk-)Loading of Terminologies
Standard Terminologies (RDF-ntriples)
- unzip
ntriples-collection.zipto a directory (denoted by<N>in the following) - unzip
cts2le-3-command-bulk.jarto a directory (denoted by<C>in the following) - go to directory
<C> - run
java -jar cts2le-3-command-bulk.jar --command fileToStore --format ntriples --sourceLoc <N> --targetLoc http://<host>:<port>/WebCts2LE- if WebCts2LE is started with
-basic_auththen the command has to be extended by--user <user> --passwd <passwd>
- if WebCts2LE is started with
Currently, the estimated load time (fuseki quad store) is about 40 minutes (~3GHz/16GB) for all public terminologies exclusive SNOMED.
Due to quad store constraints (i.e. load time roughly equals removal time) it is recommended to delete all store files on <F2>/run/databases/cts2le (for <F2> see Fuseki Installation above) if an existing filled store is the target of bulk load.
Subsequently, perform an index and suggester update (possibly with basic auth credentials):
- run
GET http://<host>:<port>/WebCts2LE/service/manage/index/updateto update the search index
Currently, the estimated index time (solr) is about 15 minutes (~3GHz/16GB).
You can delete all index files on <S1>/core-cts2le/data/index (for <S1> see Solr Installation above).
- run
GET http://<host>:<port>/WebCts2LE/service/manage/index/suggester/updateto update the suggester index - restart server
Custom FHIR Terminologies
- let
<F>denote a directory containing FHIR xml files - go to directory
<C>(see above) - run
java -jar cts2le-3-command-bulk.jar --command fileToStore --format fhir --sourceLoc <F> --targetLoc http://<host>:<port>/WebCts2LE - run
GET http://<host>:<port>/WebCts2LE/service/manage/index/suggester/updateto update the suggester index (possibly with basic auth credentials) - restart server
Basic Security
The Embedded Jetty Variant supports simple security based on Basic Access Authentication for services that modify the data base (advanced security will not be supported at this architecture level, instead special security components should be placed on top of WebCts2LE). Changing security (see HashLoginService at https://www.eclipse.org/jetty/documentation/9.4.x/configuring-security.html for details):
- edit
<W>/conf/basic-realm.properties. It containsusername: password,rolename, e.g.admin: webcts2le-admin,admin. Change username or password if needed. Role nameadminshould not be changed.
- run service with basic authentication via option flag:
./bin/startup.sh -port <port> -basic_auth