Devtron Enterprise (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. Download clone-images.sh and devtron-images.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://gist.githubusercontent.com/prakarsh-dt/818ac1c5c4fb29233f57bfc92fb607d4/raw/f9e5478a5bc2af88541bbd961e4c159cb8bc9bc0/clone-images.sh
wget https://gist.githubusercontent.com/prakarsh-dt/818ac1c5c4fb29233f57bfc92fb607d4/raw/f9e5478a5bc2af88541bbd961e4c159cb8bc9bc0/devtron-images.txt.source

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

  1. Install podman on the VM from where you're executing this script.
  2. Set the values of SOURCE_REGISTRY_USERNAME and SOURCE_REGISTRY_TOKEN (The values of these variables are separately shared with you over the email by Devtron team)
  3. Set the value of TARGET_REGISTRY, TARGET_REGISTRY_USERNAME, TARGET_REGISTRY_TOKEN as well.
  4. 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.58.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.

Install with CICD module only

helm install devtron . --create-namespace -n devtroncd --set installer.modules={cicd} --set global.containerRegistry="$TARGET_REGISTRY" 

Install with Argo CD

helm install devtron . --create-namespace -n devtroncd --set installer.modules={cicd} --set argo-cd.enabled=true --set global.containerRegistry="$TARGET_REGISTRY" --set argo-cd.global.image.repository="${TARGET_REGISTRY}/argocd" --set argo-cd.redis.image.repository="${TARGET_REGISTRY}/redis"

Use imagePullSecrets

helm install devtron . --create-namespace -n devtroncd --set installer.modules={cicd} --set argo-cd.enabled=true --set global.containerRegistry="$TARGET_REGISTRY" --set argo-cd.global.image.repository="${TARGET_REGISTRY}/argocd" --set argo-cd.redis.image.repository="${TARGET_REGISTRY}/redis" --set global.imagePullSecrets[0].name=regcred

Make sure that secret is present in devtroncd and argo namespaces as well as replace regcred with name of your imagePullSecret name.

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