Last active
April 19, 2023 13:50
-
-
Save franktate/6613490cee494025942a2b2c9d1b501a to your computer and use it in GitHub Desktop.
Configure Ubuntu 20.04 Desktop to prepare for Minikube and the ELK stack
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/bash | |
# | |
# Full list of commands required to install minikube on Ubuntu 20.04 | |
# | |
sudo groupadd docker | |
sudo usermod -aG docker $USER | |
group=docker | |
if [ $(id -gn) != $group ]; then | |
exec sg $group "$0 $*" | |
fi | |
sudo apt update | |
sudo apt install -y ca-certificates curl gnupg lsb-release net-tools | |
sudo apt-get update | |
sudo mkdir -m 0755 -p /etc/apt/keyrings | |
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg | |
echo \ | |
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ | |
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null | |
sudo apt update | |
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y | |
sudo systemctl status docker | |
# verify docker works | |
docker run hello-world | |
sudo apt install -y curl wget apt-transport-https | |
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 | |
sudo install minikube-linux-amd64 /usr/local/bin/minikube | |
curl -LO https://storage.googleapis.com/kubernetes-release/release/`curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt`/bin/linux/amd64/kubectl | |
chmod +x kubectl | |
sudo mv kubectl /usr/local/bin/ | |
kubectl version -o yaml | |
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 | |
chmod 700 get_helm.sh | |
./get_helm.sh | |
# Start minikube: Change memory and cpus to whatever you need | |
minikube start --addons=ingress default-storageclass storage-provisioner --install-addons=true --kubernetes-version=stable --driver=docker --memory 49152 --cpus 16 | |
# configure kubectl bash completion | |
kubectl completion bash | sudo tee /etc/bash_completion.d/kubectl > /dev/null | |
echo 'alias k=kubectl' >>~/.bashrc | |
echo 'complete -o default -F __start_kubectl k' >>~/.bashrc | |
. ~/.bashrc | |
# start new shell in docker group | |
exec newgrp docker |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment