MedCo Technical Documentation
GithubDocker HubMedCoLDS
v0.3.1
v0.3.1
  • Home
  • Releases
  • For System Administrators
    • Requirements
    • Deployment
      • Local Test Deployment
      • Network Test Deployment
      • Network Production Deployment
      • Configuration
        • Keycloak
        • HTTPS Configuration
        • Configuring SwitchAAI Authentication
    • Data Loading
      • v0 (Genomic Data)
      • v1 (I2B2 Demodata)
    • Command-Line Interface (CLI)
    • Network Architecture
    • Common Problems
  • For Developers
    • Local Development Deployment
    • System Architecture
    • Description of the default test data
    • Database
Powered by GitBook
On this page
  • Deployment Profiles
  • test-local-3nodes (Local Test Deployment)
  • test-network (Network Test Deployment)
  • prod-network (Network Production Deployment)
  • dev-local-3nodes (Local Development Deployment)

Was this helpful?

Export as PDF
  1. For System Administrators

Deployment

These pages explain how to deploy MedCo in different scenarios.

PreviousRequirementsNextLocal Test Deployment

Last updated 5 years ago

Was this helpful?

Each deployment scenario corresponds to a deployment profile, as described below. All these instructions use the deployment scripts from the repository.

If you are new to MedCo…

… and want to try to deploy the system on a single machine to test it, you should should follow the guide.

… and want to create or join a MedCo network for test purposes, you should follow the guide.

… and want to create or join a MedCo network in production, you should follow the guide.

… and want to develop around MedCo, you should follow the guide.

Deployment Profiles

A deployment profile is composed of two things:

  • a compose profile in medco-deployment/compose-profiles/<profile name>/: docker-compose file and parameters like ports to expose, log level, etc.

  • a configuration profile in medco-deployment/configuration-profiles/<profile name>/: files mounted in the docker containers, containing the cryptographic keys, the certificates, etc.

Some profiles are provided by default, for development or testing purposes. Those should not be used in a production scenario with real data, as the private keys are set by default, thus not private. Other types of profiles must generated using the scripts in medco-deployment/resources/profile-generation-scripts/<profile name>/.

The different profiles are the following:

test-local-3nodes ()

  • for test on a single machine (used by the MedCo live demo)

  • 3 nodes on any host

  • using the latest release of the source codes

  • no debug logging

  • profile pre-generated

  • for test on several different hosts

  • a single node on a host part of a MedCo network

  • using the latest release of the source codes

  • no debug logging

  • profile must be generated prior to use with the provided scripts

  • for a deployment in production

  • a single node on a host part of a MedCo network

  • using the latest release of the source codes

  • no debug logging

  • profile must be generated prior to use with the provided scripts

  • for software development

  • 3 nodes on the local host

  • using development version of source codes

  • debug logging enabled

  • profile pre-generated

The database is pre-loaded with some encrypted test data using a key that is pre-generated from the combination of all the participating nodes’ public keys. For the test-network and prod-network deployment profiles this data will not be correctly encrypted, since the public key of each node is generated independently, and, as such, the data must be re-loaded.

test-network ()

prod-network ()

dev-local-3nodes ()

medco-deployment
Local Test Deployment
Network Test Deployment
Network Production Deployment
Local Development Deployment
Local Test Deployment
Network Test Deployment
Network Production Deployment
Local Development Deployment