Note: The following steps were performed in an Ubuntu machine.
Deploy opencds container
The first step is to download the opencds code from https://bitbucket.org/opencds/opencds and obtain the opencds-decision-support-service.war and opencds-knowledge-repository-data.jar files
cd opencds/opencds/opencds-knowledge-repository-data/ mvn install
Rename the generated jar file for opencds-knowledge-repository-data.jar
cd .. cd opencds-decision-support-service/ mvn install -Dmaven.test.skip=true
git clone https://bitbucket.org/opencds/opencds-docker
Move opencds-knowledge-repository-data.jar and the opencds-decision-support-service.war file into opencds-docker folder.
opencds-docker folder should look like this:
../opencds-docker
├── Dockerfile
├── opencds-decision-support-service.war
├── opencds-knowledge-repository-data.jar
├── opencds.properties
├── readme.txt
├── run.sh
├── sec.xml
├── setenv.sh
└── tomcat-users.xml
sudo docker build -t="opencds/opencds:ubuntu" .
sudo docker run -d -p 8080:8080 -p 2222:22 --name opencds opencds/opencds:ubuntu
After the container has been created, the opencds service should be available on localhost:8080/opencds-decision-support-service
Update opencds-knowledge-repository-data
Connect to the opencds container using ssh. I am using the application called gigolo, but you can use another application such as filezilla or use the command line.
Open gigolo and click on "connect". use the following settings:
server: localhost
port: 2222
user: root
password: screencast
Double click on the new connection and open the root folder where you will be able to see .opencds folder (configuration) and open-knowledge-repository-data.
The following is the structure of open-knowledge-repository-data/resources folder:
../resources_v1.3/ ├── conceptDeterminationMethods │ └── cdm.xml ├── executionEngines.xml ├── knowledgeModules.xml ├── knowledgePackages │ ├── edu.utah^AHRQ_PSI_02^4.3.0.pkg │ ├── edu.utah^AHRQ_PSI_02^4.3.1.pkg │ ├── edu.utah.HEDIS.v2015_0.CAP.pkg │ ├── edu.utah.HEDIS.v2015_0.CBP.pkg ... ├── plugins │ ├── opencds-plugins.xml │ └── packages ├── semanticSignifiers.xml └── supportingData ├── concepts-supportingData.xml └── packages └── concepts.txt
Basically, you have to manually place the pkg file that is generated by guvnor inside of the knowledgePackages folder and modify the knowledgeModules.xml accordingly. After this you will need to restart opencds or call the reload URL. Please see “Exporting a Knowledge Module to OpenCDS – File-Based” for more information.