Docker resources to set up a PhEMA Workbench instance.
You'll need Docker and Docker Compose installed.
To run the workbench locally, first clone this repo:
git clone https://github.com/PheMA/phema-workbench-deploy.git && cd phema-workbench-deploy
Then spin up the containers with Compose:
PHEMA_WORKBENCH_CERTS_PATH=./certs PHEMA_WORKBENCH_HTPASSWD_PATH=./htpasswd docker compose up
The environment variables provided point to local, testing versions of the .htpasswd file and SSL certificates.  None of these should be used in a publicly-facing environment.
💡 You may have to run this a few times until it works, since container dependencies are not currently set up properly. Once Postgres is initialized it should start up first time every time.
Once the containers are all running, the following URLs should be accessible:
- https://workbench.local.phema.science:4321/ - The PhEMA Workbench app
 - https://workbench.local.phema.science:4321/fhir - The FHIR server base URL
 - https://workbench.local.phema.science:4321/hapi - The HAPI FHIR web overlay
 
💡 When running CQL, use the PhEMA Workbench CQL Executor server.
For the local instance, the default credentials are:
- Login: test
 - Password: test
 
We have the ability to perform a production deploy protected by basic auth (for now). To do this, you need to set the following environment variables before running Compose:
PHEMA_WORKBENCH_HTPASSWD_PATH: The path to thehtpasswdfile to use.PHEMA_WORKBENCH_ENV: Set this toprodto use thenginx-prod.conffile, or create a new Nginx config file callednginx-whatever.confand set the variable towhatever.
For example:
PHEMA_WORKBENCH_HTPASSWD_PATH=/opt/phema/workbench/.htpasswd PHEMA_WORKBENCH_ENV=prod docker-compose up