cda2vmr container
Steps required to build cda2vmr docker image:
Download opencds-cdstovmr-docker
git clone https://bitbucket.org/opencds/opencds-cdstovmr-docker
Install Mercurial
In order to build this image you will need cda-ws-ear.ear and cda-ws-web.war files. These files can be obtained by cloning and building the cda-web-service project. First you need to install Mercurial (https://mercurial.selenic.com/) which is the control management tool used in this project.
sudo apt-get install mercurial
Clone and build cda-web-service project
hg clone https://bitbucket.org/sharps-ds2/cda-web-service cd cda-web-service; mvn clean install
Copy cda-ws-web.war and cda-ws-ear.ear into docker folder
cp cda-web-service/cda-ws-ear/target/cda-ws-ear.ear opencds-cdstovmr-docker/ cp cda-web-service/cda-ws-webapp/target/cda-ws-web.war opencds-cdstovmr-docker/
Download terminology files and place them into docker folder
Also you need the following terminology resources. Place these five files into opencds-cdstovmr-docker folder.
From http://www.nlm.nih.gov/research/umls/
ICD9CM_SNOMED_MAP_1TO1.txt
ICD9CM_SNOMED_MAP_1TOM.txt
SNOMEDCT_CORE_SUBSET_201311.txt
tls_Icd10HumanReadableMap_INT_20131220.tsv
From http://www.hcup-us.ahrq.gov/toolssoftware/icd_10/ccs_icd10_2006.zip
ccs_icd10_2006.csv
Check the content of opencds-cdstovmr-docker folder
The opencds-cdatovmr-docker folder should look like this:
opencds-cdstovmr-docker/ ├── ccs_icd10_2006.csv ├── cda-ws-ear.ear ├── cda-ws-web.war ├── change_admin_password_func.sh ├── change_admin_password.sh ├── Dockerfile ├── ejb-jar.xml ├── enable_secure_admin.sh ├── ICD9CM_SNOMED_MAP_1TO1.txt ├── ICD9CM_SNOMED_MAP_1TOM.txt ├── log4j.properties ├── naivebayespredicate.properties ├── opencds_concept_generator.sh ├── opencds-decision-support-service-config.xml ├── readme.txt ├── reducer-env.properties ├── run.sh ├── SNOMEDCT_CORE_SUBSET_201311.txt └── tls_Icd10HumanReadableMap_INT_20131220.tsv
Define the URL of the opencds instance on ejb-jar.xml
Before build the image, edit the ejb-jar.xml file and define the URL of the OpenCDS service.
<session> <ejb-name>OpenCdsServiceMGR</ejb-name> <env-entry> <env-entry-name>OPENCDS_ENDPOINT</env-entry-name> <env-entry-type>java.lang.String</env-entry-type> <env-entry-value>http://192.168.1.101:8081/opencds-decision-support-service-1.2.0-SNAPSHOT/evaluate</env-entry-value> </env-entry>
Build and deploy container
sudo docker build -t="opencds/cdatovmr" . sudo docker run -p 8080:8080 -p 2222:22 -p 4848:4848 -p 8181:8181 -p 9009:9009 --name cdatovmr -i -t opencds/cdatovmr
Check applications
By default the image includes the following four applications:
- Inference analyzer - http://locahost:8080/SimplePredicateReducerVisualizer-1.0-SNAPSHOT
- Predicate/Reducer - http://localhost:8080/opencds-decision-support-service-1.2.0-SNAPSHOT/evaluate?wsdl
- Predicate reducer Web service - http://localhost:8080/CdaService/Evaluate?wsdl
- Predicate reducer web application - http://localhost:8080/cda-ws-web/
Notes
It is important to note that you can remove any of these applications by commenting or removing the appropriate lines on the Dockerfile.
References
https://sharps-ds2.atlassian.net/wiki/display/DS2/Projects