Deployment
Docker Containers
OpenCDMP is containerized using Docker, with each service running on its own Docker container. This isolation ensures consistency across environments and simplifies deployment.
Simple Deployment
Deployment configuration is provided to simplify deployment process for testing purposes.
Prerequisites
-
Docker and Docker Compose:
- Install Docker (version 20.10 or higher recommended)
- Install Docker Compose (version 1.29 or higher recommended)
-
Docker Deployment Knowledge
Deployment Steps
-
Clone the demo deployemnt Repository:
git clone https://github.com/OpenCDMP/OpenCDMP.git
cd OpenCDMP/deployment -
Start the Services:
# make sure the deploy script is executable
chmod 700 deploy_opencdmp.sh
# Run the deploy script
./deploy_opencdmp.sh- If you get the error "-bash: ./deploy_opencdmp.sh: cannot execute: required file not found", it means the script has Windows (CRLF) line endings and you need to convert it to Unix (LF). You can either do this by hand in some text editor or run the following command.
sudo apt install dos2unix
dos2unix ./deploy_opencdmp.sh -
Verify the Deployment:
docker compose ps
-
Access the Application:
- Navigate to
http://host.docker.internal:8081/
. - Replace
host.docker.internal
with your domain or IP if configured differently. - Log in with OpenCDMP's admin user.
User: opencdmp-admin
Pass: admin - Navigate to
-
Access and Configure Keycloak (Authentication Service):
- Navigate to
http://host.docker.internal:8081/auth/
. - Log in with Keycloak's admin user.
User: keycloak-admin
Pass: admin- Configure realms, clients, users, and roles as needed. (For security reasons, change the password for the keycloak-admin user or recreate it with your own credentials)
- Navigate to
Advanced Deployment
OpenCDMP offers various configuration options per installation. The files at the deployment
folder can be used as a starting point, and edited accordingly. All env files are explained here.
The deployment process should be the same as long as the modified configuration is correct.