Minikube
This following will install Terrakube using "HTTP" a few features like the Terraform registry and the Terraform remote state won't be available because they require "HTTPS", to install with HTTPS support locally with minikube check this
Terrakube can be installed in minikube as a sandbox environment to test, to use it please follow this:
Setup Helm Repository
helm repo add terrakube-repo https://AzBuilder.github.io/terrakube-helm-chart
helm repo update
Setup Minikube
minikube start
minikube addons enable ingress
minikube addons enable storage-provisioner
minikube ip
Setup Terrakube namespace
kubectl create namespace terrakube
Setup DNS records
sudo nano /etc/hosts
192.168.59.100 terrakube-ui.minikube.net
192.168.59.100 terrakube-api.minikube.net
192.168.59.100 terrakube-reg.minikube.net
Install Terrakube
helm install terrakube terrakube-repo/terrakube -n terrakube
If you found the following message "Snippet directives are disabled by the Ingress administrator", please update the ingres-nginx-controller configMap in namespace ingress-nginx adding the following:
allow-snippet-annotations: "true"
Reference: https://github.com/AzBuilder/terrakube/issues/618#issuecomment-1838980451
The environment has some users, groups and sample data so you can test it quickly.
Visit http://terrakube-ui.minikube.net and login using admin@example.com with password admin
You can login using the following user and passwords
admin@example.com
admin
TERRAKUBE_ADMIN, TERRAKUBE_DEVELOPERS
aws@example.com
aws
AWS_DEVELOPERS
gcp@example.com
gcp
GCP_DEVELOPERS
azure@example.com
azure
AZURE_DEVELOPERS
TERRAKUBE_ADMIN
TERRAKUBE_DEVELOPERS
AZURE_DEVELOPERS
AWS_DEVELOPERS
GCP_DEVELOPERS
The sample user and groups information can be updated in the kubernetes secret:
terrakube-openldap-secrets
Minikube will use a very simple OpenLDAP, make sure to change this when using in a real kubernetes environment. Using the option security.useOpenLDAP=false in your helm deployment.
Select the "simple" organization and the "sample_simple" workspace and run a job.
Last updated
Was this helpful?