Last active
January 16, 2023 01:00
-
-
Save abola/eee82fae6be30a3f1e0d200e3e20f4f9 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
### | |
# MicroK8s + Rancher installer | |
## | |
# 如果您的環境不是在 GCP 請自行調整以下兩個變數 | |
EXTERNAL_IP=$(curl -s 169.254.169.254/computeMetadata/v1beta1/instance/network-interfaces/0/access-configs/0/external-ip) | |
PROJECT_ID=$(curl -s 169.254.169.254/computeMetadata/v1beta1/project/project-id) | |
sudo snap install microk8s --channel=1.18 --classic | |
sudo microk8s.enable dns dashboard storage ingress helm3 rbac | |
sudo sh -c 'echo "--allow-privileged=true" >> /var/snap/microk8s/current/args/kube-apiserver' | |
sudo systemctl restart snap.microk8s.daemon-apiserver.service | |
sudo microk8s.helm3 repo add jetstack https://charts.jetstack.io | |
sudo microk8s.kubectl create namespace cert-manager | |
sudo microk8s.kubectl label namespace cert-manager certmanager.k8s.io/disable-validation=true | |
sudo microk8s.helm3 install cert-manager jetstack/cert-manager --namespace cert-manager --version v0.15.1 --set installCRDs=true | |
while [ `sudo microk8s.kubectl get po -n cert-manager | grep '1/1' | wc -l` -lt 3 ] | |
do | |
sleep 3 | |
echo "等待 cert-manager 服務啟動 ..." | |
done | |
sudo microk8s.helm3 repo add rancher-stable https://releases.rancher.com/server-charts/stable | |
sudo microk8s.kubectl create namespace cattle-system | |
sudo microk8s.helm3 install rancher rancher-stable/rancher --namespace cattle-system --set replicas=1 --set hostname=${PROJECT_ID}.${EXTERNAL_IP}.nip.io --set ingress.tls.source=letsEncrypt --set letsEncrypt.email=${PROJECT_ID}@example.com | |
while [ `sudo microk8s.kubectl get po -n cattle-system | grep ^rancher | grep '1/1' | wc -l` -eq 0 ] | |
do | |
sleep 10 | |
echo "Rancher 啟動中請稍候 ... " | |
done | |
echo "----------------------------------------" | |
echo "安裝完成" | |
echo "現在您可以開啟 https://${PROJECT_ID}.${EXTERNAL_IP}.nip.io" | |
echo "----------------------------------------" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment