Skip to content

Instantly share code, notes, and snippets.

@javajenks
Last active April 5, 2020 21:33
Show Gist options
  • Save javajenks/6f39dd14b10a6e1004138214dfbbf2cd to your computer and use it in GitHub Desktop.
Save javajenks/6f39dd14b10a6e1004138214dfbbf2cd to your computer and use it in GitHub Desktop.
che install on Kubernetes OSX
- Install / enable kubernetes using docker-desktop
$ export CHE_VERSION=7.10.0
-- Install helm2 using homebrew (helm3 did not seem to work for me)
brew install helm@2
-- install nginx for ingress
$ kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/static/mandatory.yaml
$ kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/static/provider/cloud-generic.yaml
-- Checkout the che source
git clone -b $CHE_VERSION --single-branch --depth 1 https://github.com/eclipse/che
cd che
mvn clean install
-- This will take a long time to build.
cd dockerfiles
./build.sh
-- This builds the versioned docker containers and pushes to local repo
cd ../../deploy/kubernetes/helm/che
-- setup tiller
$ kubectl create serviceaccount tiller --namespace kube-system
$ kubectl apply -f ./tiller-rbac.yaml
$ helm init --service-account tiller
$ export CHE_DOMAIN=$(kubectl get services --namespace ingress-nginx -o jsonpath='{.items[*].spec.clusterIP}')
sudo ifconfig lo0 alias ${CHE_DOMAIN}
-- check all the pods are in Running state
$ kubectl get pods --all-namespaces -o custom-columns=NAMESPACE:metadata.namespace,NAME:metadata.name,STATUS:status.phase
-- Need this to resolve the helm dependencies, otherwise the install will fail
$ helm dependency build
-- Run the installation, use debug to check
$ helm upgrade --install che --namespace che --set cheImage=eclipse/che-server:$CHE_VERSION --set global.cheWorkspacesNamespace="che" --set global.ingressDomain=${CHE_DOMAIN}.nip.io --debug .
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment