Difference between revisions of "Kubernetes/Helm"
Jump to navigation
Jump to search
Line 1: | Line 1: | ||
[https://helm.sh/docs/intro/install/ Install] | = [https://helm.sh/docs/intro/install/ Install] = | ||
<source lang=bash> | <source lang=bash> | ||
LATEST=$(curl --silent "https://api.github.com/repos/helm/helm/releases/latest" | jq -r .tag_name) | LATEST=$(curl --silent "https://api.github.com/repos/helm/helm/releases/latest" | jq -r .tag_name) | ||
Line 6: | Line 6: | ||
sudo install linux-amd64/helm /usr/local/bin/helm | sudo install linux-amd64/helm /usr/local/bin/helm | ||
</source> | </source> | ||
= Operations = | |||
<source lang=bash> | |||
helm repo add stable https://kubernetes-charts.storage.googleapis.com/ | |||
helm repo update # Make sure we get the latest list of charts | |||
helm search repo stable/jenkins | |||
# Helm3 bug:does not respect '--namespace' flag, so set default namespace | |||
kubectl create ns jenkins | |||
kubectl config set-context $(kubectl config current-context) --namespace=jenkins | |||
helm install [NAME] [CHART] [flags] | |||
helm install jenkins-ci stable/jenkins # release name: jenkins-ci | |||
helm install stable/mysql --generate-name # release name will be generated | |||
helm ls # show a list of all deployed releases | |||
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION | |||
jenkins-ci jenkins 1 2020-04-25 15:.. deployed jenkins-1.17.2 lts | |||
</source> | |||
;Jenkins chart post install instructions | |||
<pre> | |||
NAME: jenkins-ci | |||
LAST DEPLOYED: Sat Apr 25 15:33:36 2020 | |||
NAMESPACE: jenkins | |||
STATUS: deployed | |||
REVISION: 1 | |||
NOTES: | |||
1. Get your 'admin' user password by running: | |||
printf $(kubectl get secret --namespace jenkins jenkins-ci -o jsonpath="{.data.jenkins-admin-password}" | base64 --decode);echo | |||
2. Get the Jenkins URL to visit by running these commands in the same shell: | |||
export POD_NAME=$(kubectl get pods --namespace jenkins -l "app.kubernetes.io/component=jenkins-master" -l "app.kubernetes.io/instance=jenkins-ci" -o jsonpath="{.items[0].metadata.name}") | |||
echo http://127.0.0.1:8080 | |||
kubectl --namespace jenkins port-forward $POD_NAME 8080:8080 | |||
3. Login with the password from step 1 and the username: admin | |||
For more information on running Jenkins on Kubernetes, visit: | |||
https://cloud.google.com/solutions/jenkins-on-container-engine | |||
</pre> | |||
= Resources = | |||
* [https://helm.sh/docs/intro/using_helm/ Using Helm Guide] |
Revision as of 16:38, 25 April 2020
Install
LATEST=$(curl --silent "https://api.github.com/repos/helm/helm/releases/latest" | jq -r .tag_name) curl -LO https://get.helm.sh/helm-${LATEST}-linux-amd64.tar.gz tar xzvf helm-${LATEST}-linux-amd64.tar.gz sudo install linux-amd64/helm /usr/local/bin/helm
Operations
helm repo add stable https://kubernetes-charts.storage.googleapis.com/ helm repo update # Make sure we get the latest list of charts helm search repo stable/jenkins # Helm3 bug:does not respect '--namespace' flag, so set default namespace kubectl create ns jenkins kubectl config set-context $(kubectl config current-context) --namespace=jenkins helm install [NAME] [CHART] [flags] helm install jenkins-ci stable/jenkins # release name: jenkins-ci helm install stable/mysql --generate-name # release name will be generated helm ls # show a list of all deployed releases NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION jenkins-ci jenkins 1 2020-04-25 15:.. deployed jenkins-1.17.2 lts
- Jenkins chart post install instructions
NAME: jenkins-ci LAST DEPLOYED: Sat Apr 25 15:33:36 2020 NAMESPACE: jenkins STATUS: deployed REVISION: 1 NOTES: 1. Get your 'admin' user password by running: printf $(kubectl get secret --namespace jenkins jenkins-ci -o jsonpath="{.data.jenkins-admin-password}" | base64 --decode);echo 2. Get the Jenkins URL to visit by running these commands in the same shell: export POD_NAME=$(kubectl get pods --namespace jenkins -l "app.kubernetes.io/component=jenkins-master" -l "app.kubernetes.io/instance=jenkins-ci" -o jsonpath="{.items[0].metadata.name}") echo http://127.0.0.1:8080 kubectl --namespace jenkins port-forward $POD_NAME 8080:8080 3. Login with the password from step 1 and the username: admin For more information on running Jenkins on Kubernetes, visit: https://cloud.google.com/solutions/jenkins-on-container-engine