Quick Start: Local Cluster Setup Script
Once you have installed all the necessary tools, you can proceed with setting up your Kubernetes cluster. This cluster is your local environment for running the CIVITAS platform.
For installing the basic cluster services (Ingress, cert-manager, and load balancer) you can run the startup.sh
script.
Windows Users: Since the
startup.sh
script is a Unix shell script, you must use a terminal that supports Unix-like commands, such as:
Clone the Civitas Repository
First, clone the repository to your local machine. This repository contains all the necessary files.
git clone https://gitlab.com/civitas-connect/civitas-core/civitas-core.git
cd civitas-core/local_deployment
The necessary files for local Kubernetes deployment are located in the local_deployment
folder within the repository.
Definition of the Custom Domain
The default domain for local deployment is civitas.test
. If you want to define a custom domain for your local environment, set the DOMAIN
environment variable as follows:
export DOMAIN=civitas.test
Run the startup.sh
Script
Run the script based on the cluster you're using:
If Minikube cluster is not installed
./startup.sh -h # optional
./startup.sh -m # The flag -m will install a Minikube cluster
For installation with existing cluster
If a Minikube cluster is already running or you want to use an existing cluster, run the following command:
./startup.sh -h # optional
./startup.sh
Custom Kubernetes cluster
Custom Kubernetes cluster
If you already have another Kubernetes distribution, you can use environment variables to connect to your cluster. See ./startup.sh -h
for more details. Example:
If you already have another Kubernetes distribution, you can use environment variables to connect to your cluster. See ./startup.sh -h
for more details. Example:
export KUBECONTEXT=k3d-civitas-local
./startup.sh
After Running startup.sh
The startup.sh
script automates the setup of key components for platform deployment:
- Ingress-nginx: Manages external access to your services.
- MetalLB: Assigns external IPs to services.
- Cert-Manager: Manages SSL/TLS certificates.
If you are using Minikube, you must start the Minikube tunnel to access the cluster via 127.0.0.1
:
minikube tunnel
After the setup completes, access the platform at http://civitas.test.
Next, proceed with deploying the CIVITAS/CORE platform as described in the following sections for local deployment.