Devtron Enterprise Kubernetes Dashboard (Air‐gapped) - devtron-labs/utilities GitHub Wiki

This documentation is for installing Devtron in air-gapped clusters. If your cluster is NOT air-gapped, consider Installing Devtron referring this documentation as air-gapped installations have certain limitations.

Pre-requisites

  1. Make sure that you have podman installed on the VM from where you're executing this script.
  2. Download clone-images.sh and devtron-images-ea-ent.txt.source on the VM which has public internet access as well as access to your private registry. You can use the following commands:
wget https://raw.githubusercontent.com/devtron-labs/utilities/main/scripts/devtron-installation-utlities/kubernetes-dashboard/clone-images.sh
wget https://raw.githubusercontent.com/devtron-labs/utilities/main/scripts/devtron-installation-utlities/kubernetes-dashboard/devtron-images-ea-ent.txt.source

You can also push all the images mentioned in devtron-images-ea-ent.txt.source manually to your private registry if you wish to and skip to step 6.

  1. Set the values of SOURCE_REGISTRY_USERNAME and SOURCE_REGISTRY_TOKEN in clone-images.sh file (The values of these variables are separately shared with you over the email by Devtron team).
  2. Set the value of TARGET_REGISTRY, TARGET_REGISTRY_USERNAME, TARGET_REGISTRY_TOKEN as well in clone-images.sh file.
  3. Make the script executable and run it:
chmod +x clone-images.sh
bash clone-images.sh

Wait for all the images to be pushed to your target registry.

  1. Download and unzip the devtron air-gapped helm chart on the bastion from which you are able to access your airgapped cluster.
tar -xzvf devtron-operator-0.22.73.tgz
cd devtron-operator

Devtron Installation

Once all Devtron images are successfully pushed to your Container Registry, verify it once and then use the following helm commands to install Devtron from the Devtron air-gapped chart downloaded in Step-6 above. Make sure to run the helm install commands from within the devtron-operator directory.

Create devtroncd namespace and imagePull Secret

kubectl create namespace devtroncd
kubectl create secret docker-registry devtron-image-pull-enterprise --namespace devtroncd --docker-server=$TARGET_REGISTRY_URL --docker-username=$TARGET_REGISTRY_USERNAME --docker-password=$TARGET_REGISTRY_TOKEN

Install

sed -i 's/devtroninc.azurecr.io/<TARGET_REGISTRY_URL>/g'  values.yaml
helm install devtron . -n devtroncd --set global.containerRegistry="TARGET_REGISTRY_URL" --set global.imagePullSecrets[0].name=devtron-image-pull-enterprise

Make sure to replace the TARGET_REGISTRY_URL with the actual registry URL.

Refer the standard Devtron installation documentation for further steps to get the dashboard and password for admin.