On-Prem Control Plane Deployment
1. CMS Installation
1.1 Docker Installation
Install Docker and required dependencies on the server:
1.2 Docker Log Configuration
To prevent disk exhaustion caused by high-log-producing containers (e.g. GitLab), configure Docker log rotation.
Edit the Docker daemon configuration:
Restart Docker:
1.3 Private Registry Login
To pull application images, authenticate to the private Docker registry:
1.4 Docker Compose Installation
Docker Compose version 2.16.0 or higher is required.
1.5 CMS Installation (Internet-Accessible Environment)
If the environment has internet access, images will be pulled automatically.
From the directory containing the deploy YAML file and the ms/ folder:
1.6 CMS Installation (Offline Environment)
For air-gapped environments, images must be pulled and saved on another server.
Example:
On the target server:
Then deploy CMS:
1.7 GitLab Installation
GitLab is deployed using a separate Docker Compose file and should run independently from CMS.
- CMS and GitLab must use the same Docker network
- GitLab UI is accessible via http://<host-ip>:10100 (port configurable)
After startup:
- The directory krn-git/ is created automatically
- Initial admin password is located at:
This file is automatically deleted after 24 hours.
Post-installation steps:
- Log in using the initial password
- Create a new admin user with full permissions
- Create GitLab groups:
- product (group)
- dsp (subgroup)
- Generate a Personal Access Token with full permissions
- Update the following files accordingly:
- ms/scripts/git/lab/.git-credentials
- ms/scripts/git/lab/.gitconfig
- Update host-specific IPs in the compose files
Finally, start CMS:
If containers exit on first startup, rerun the command. This may happen due to initial health-check dependencies.