Skip to content

david-fraley/MassVaccinationSystem

Repository files navigation

MassVaccinationSystem

For more information about this project, visit MassVaxx. The following sections provide multiple methods to setup and run the system.

How to run

Method 1: Using Docker Compose

See README.md in sandbox directory for further instructions.

Method 2: Using only Node.js (Docker not required)

Prerequisites:

  • Node.js is installed.
  • MassVaccinationSystem project source code downloaded.

Steps:

  1. Create .env file in /broker directory with the contents:

     DEVELOPMENT=1
     FHIR_URL_BASE=http://fhir-dstu2-nprogram.azurewebsites.net/
    
  2. Run the following commands:

     cd <MassVaccinationSystem>/PatientRegistrationApp
     npm install
     npm run devbuild
     cd <MassVaccinationSystem>/PointOfDispensingApp
     npm install
     npm run devbuild
     cd <MassVaccinationSystem>/broker
     npm install
     node server.js
    

Notes:

Method 3: Using Docker Compose and Nodejs

Prerequisites:

  • Node.js is installed.
  • Docker Compose and any dependencies are installed.
  • MassVaccinationSystem project source code downloaded.

Setup

  1. In /, copy env.template to a file named .env (note the dot in .env filename) and update the FHIR_URL_BASE variable to FHIR_URL_BASE=http://localhost:8080/hapi-fhir-jpaserver/fhir
  2. In /data/hapi/, copy hapi.properties.template to a file named hapi.properties.
  3. (Optional) Edit .env and /data/hapi/hapi.properties file to change default database passwords (HAPI_DB_PASSWORD). Make sure the passwords match in .env and hapi.properties.

How to run

Perform each of the following in a separate terminal:

  1. Navigate to / and run docker-compose -f docker-compose-dev.yml up --build
  2. Navigate to /broker and run npm install. Once dependencies are installed, run npm run devstart
  3. Navigate to /PatientRegistrationApp and run npm install. Once dependencies are installed, run npm run serve
  4. Navigate to /PointOfDispensingApp and run npm install. Once dependencies are installed, run npm run serve

How to view

  1. The Patient Registration App can be viewed at http://localhost:8081
  2. The Point of Dispensing App can be viewed at http://localhost:8082
  3. HTTP requests from the Vue servers will automatically be redirected to broker (running on port 3000) for you
  4. Any changes made to the source files for Broker, PatientRegistration, or PointOfDispensing will immediately take effect! Changes made to the Vue apps will cause the browser to automatically refresh with the updated code/content

Troubleshooting

1. Database connectivity issues

If you encounter issues connecting to the database after following the instructions above (e.g. server address not found, invalid database credentials), try performing the steps below. Note that these commands will delete all existing data from the database.

  1. Stop the docker containers and broker
  2. Run docker-compose down -v or docker-compose -f docker-compose-dev.yml down -v (depending on how you've been running docker) from the root project directory
  3. Restart the docker containers and broker

If you are still having connectivity issues, try the following steps

  1. Stop the docker containers and broker
  2. Run docker-compose down -v or docker-compose -f docker-compose-dev.yml down -v (depending on how you've been running docker) from the root project directory
  3. Run docker container prune -f
  4. Run docker volume prune -f
  5. Run docker network prune -f
  6. Restart the docker containers and broker

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 19

Languages