Getting Started

  • 16 GB RAM recommended
  • Recent multi-core CPU recommended
  • Docker and Docker Compose installed

Pre-requisites

Linux (Ubuntu / Debian)
sudo apt update
sudo apt install -y docker.io docker-compose-plugin
docker --version

Mac

  • We support the current macOS release
  • Apple Silicon Mac recommended
  • Install Docker Desktop: Docker Desktop
  • Docker Compose is included with Docker Desktop

Windows

  • Windows 11 Pro, Enterprise, or Education recommended
  • Virtualization enabled in BIOS (Intel VT-x / AMD-V)
  • Docker Desktop installed
  • Enable "Use WSL 2 instead of Hyper-V"
  • Enable Docker Compose
Windows (Powershell)
Windows PowerShell wsl --install Restart-Computer wsl --install -d Ubuntu

Deploy locally your first project under 5 minutes

After completing the onboarding process, a test project names GitLab Cortex Demo will be automatically created.

Please select this project and generate the artifact Docker Compose Files.

To deploy it locally with docker desktop, please follow this steps:

Create shared docker networks

All Platforms
docker network create gateway-net
docker network create backend-net

Generate a root certificate (skip if you already have one)

chmod +x generate-root-ca.bash
./generate-root-ca.bash cortexRootCertificate

If you want your browser and tools (curl, Chrome, etc.) to trust the TLS certificates generated for the platform, you should install the generated root certificate into your system trust store.

Mac OS
sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain cortexRootCertificate.crt
Linux (Ubuntu/Debian)
sudo cp cortexRootCertificate.crt /usr/local/share/ca-certificates/
sudo update-ca-certificates
Windows (Powershell)
Import-Certificate -FilePath cortexRootCertificate.crt \ -CertStoreLocation Cert:\LocalMachine\Root

Generate TLS certificates

We'll now generate the application certificates using the provided root certificate.

Linux (Ubuntu/Debian)
chmod +x make-certs-development.bash
./make-certs-development.bash ./cortexRootCertificate.crt ./cortexRootCertificate.key

We are using here the cortexRootCertificate.* files generated in the previous step. You may replace these files with your own root certificate if you want the generated TLS certificates to be trusted by your internal PKI.

Start the project

The ROOT_CA_FILE argument allows the Chromium container to trust the root certificate used to generate the TLS certificates.

MacOS / Linux
ROOT_CA_FILE=cortexRootCertificate.crt docker-compose -f docker-compose-development.yaml -f docker-compose-common.yml up -d --build

Connect to Gitlab

You can connect to gitlab using the embedded Chromium service: http://localhost:5800/ and navigate to https://gitlab.dev.cortexdemo.com

If you want to connect from your web browser, you'll have to install the root certificate on your local TrustStore and declare the hosts in /etc/hosts

MacOS / Linux
127.0.0.1       gitlab.dev.cortexdemo.com
127.0.0.1       phpldapadmin.dev.cortexdemo.com
127.0.0.1       pgadmin.dev.cortexdemo.com

Stop the project

MacOS / Linux
docker-compose -f docker-compose-development.yaml -f docker-compose-common.yml down