Small project for getting in touch with deploying a sample Wekan application with its own MongoDB in Azure AKS. For Wekan please take a look at: https://wekan.github.io/
You can use the Quickstart Documentation from Microsoft for getting a good overview. There you can find all the tools and commands you need for starting to work with an AKS: https://docs.microsoft.com/en-us/azure/aks/kubernetes-walkthrough
For Helm please refer to: https://docs.helm.sh/using_helm/ For Kubernetes go to the official documentation: https://kubernetes.io/docs/concepts/
Step by step
- If necessary install all the tools you need (Chocolatey, Helm, Kubernetes CLI, Azure CLI, Cygwin) .
- Create a resource group.
- Create a container registry for your images (Prometheus/Grafana).
- Create an AKS inside of your resource group.
Inside of your AKS give your static ip adress a name and a DNS name.
You will both use them later for your ingress. - Login into Azure CLI using PowerShell and get your Kubernetes Configuration.
- Deploy Tiller.
- Deploy Ingress Controller (NGINX).
- Deploy CERT Manager (for TLS and using Let's Encrypt)
- Deploy Prometheus and Grafana via Helm Charts or use your own images.
Build your images with the right tag of your container registry.
Login into your container registry.
Push your images.
Create secret for authentication of your cluster against the container registry: kubectl create secret docker-registry acr-auth --docker-server --docker-username --docker-password --docker-email
Use your secret inside of your deployment files.
Deploy Grafana and Prometheus. - Deploy MongoDB and its service.
- Deploy WeKan, its service and ingress.