Automated changes by [create-pull-request](https://github.com/peter-evans/create-pull-request) GitHub action Signed-off-by: Github Actions <133988544+victoriametrics-bot@users.noreply.github.com> Co-authored-by: AndrewChubatiuk <3162380+AndrewChubatiuk@users.noreply.github.com>
3.7 KiB
Prerequisites to develop and test Helm Charts
Kubernetes Cluster
You will need to create a Kubernetes cluster locally using minikube, microk8s, kind, k3s or other tools.
Or use Kubernetes cluster in EKS, GKE, AKS, DOKS or other cloud provider.
Install Docker-CE
Follow instructions of page for install Docker-CE.
- Ubuntu: https://docs.docker.com/install/linux/docker-ce/ubuntu/
- Debian: https://docs.docker.com/install/linux/docker-ce/debian/
- CentOS: https://docs.docker.com/install/linux/docker-ce/centos/
- MacOS: https://docs.docker.com/docker-for-mac/install/
Start the Docker service, configure Docker to boot up with the OS and add your user to the Docker group.
# Start the Docker service
sudo systemctl start docker
# Configure Docker to boot up with the OS
sudo systemctl enable docker
# Add your user to the Docker group
sudo usermod -aG docker $USER
sudo setfacl -m user:$USER:rw /var/run/docker.sock
Source: https://docs.docker.com/engine/install/linux-postinstall/#configure-docker-to-start-on-boot
Install Kubectl
Simple shell function for Kubectl installation in Linux 64 bits. Copy and paste this code:
sudo su
VERSION=v1.22.2
KUBECTL_BIN=kubectl
function install_kubectl {
if [ -z $(which $KUBECTL_BIN) ]; then
curl -LO https://storage.googleapis.com/kubernetes-release/release/$VERSION/bin/linux/amd64/$KUBECTL_BIN
chmod +x ${KUBECTL_BIN}
sudo mv ${KUBECTL_BIN} /usr/local/bin/${KUBECTL_BIN}
sudo ln -sf /usr/local/bin/${KUBECTL_BIN} /usr/bin/${KUBECTL_BIN}
else
echo "Kubectl is most likely installed"
fi
}
install_kubectl
which kubectl
kubectl version --client
exit
Kubectl documentation:
https://kubernetes.io/docs/reference/kubectl/overview/
Credits: Juan Pablo Perez - https://www.linkedin.com/in/juanpabloperezpeelmicro/
https://github.com/peelmicro/learn-devops-the-complete-kubernetes-course
Helm Docs
Run the following commands to install helm-docs
.
HELM_DOCS_VERSION=1.5.0
HELM_DOCS_PACKAGE=helm-docs_``$HELM_DOCS_VERSION``_linux_x86_64.tar.gz
cd /tmp
wget https://github.com/norwoodj/helm-docs/releases/download/v$HELM_DOCS_VERSION/$HELM_DOCS_PACKAGE
tar xzvf $HELM_DOCS_PACKAGE
sudo mv helm-docs /usr/local/bin/
sudo chmod +rx /usr/local/bin/helm-docs
helm-docs --version
Documentation: https://github.com/norwoodj/helm-docs
The documentation generated by helm-docs
is based on the contents of the values.yaml
, README.md.gotmpl
and Chart.yaml
file. It tries to overwrite the contents of the README.md
file within the chart directory.
Install Helm 3
Execute these commands to install helm 3.14+.
sudo su
HELM_TAR_FILE=helm-v3.15.3-linux-amd64.tar.gz
HELM_URL=https://get.helm.sh
HELM_BIN=helm3
function install_helm3 {
if [ -z $(which $HELM_BIN) ]; then
wget ${HELM_URL}/${HELM_TAR_FILE}
tar -xvzf ${HELM_TAR_FILE}
chmod +x linux-amd64/helm
sudo cp linux-amd64/helm /usr/local/bin/$HELM_BIN
sudo ln -sfn /usr/local/bin/$HELM_BIN /usr/local/bin/helm
rm -rf ${HELM_TAR_FILE} linux-amd64
echo -e "\nwhich ${HELM_BIN}"
which ${HELM_BIN}
else
echo "Helm 3 is most likely installed"
fi
}
install_helm3
which $HELM_BIN
$HELM_BIN version
exit
Documentation: https://helm.sh/docs/
Credits: Juan Pablo Perez - https://www.linkedin.com/in/juanpabloperezpeelmicro/
https://github.com/peelmicro/learn-devops-the-complete-kubernetes-course