Quickstart
Install Epinio and push an application, with default options. Copy-paste the commands below in order.
Prerequisites​
kubectlandhelminstalled.- A Kubernetes cluster with a default StorageClass and a default IngressClass.
For anything beyond a trial, see system requirements and the full installation guide.
- Existing Cluster
- New Cluster
helm repo add traefik https://traefik.github.io/charts
helm repo update
helm upgrade --install traefik traefik/traefik --namespace traefik --create-namespace \
--set ingressClass.isDefaultClass=true \
--set ports.web.hostPort=80 \
--set ports.websecure.hostPort=443
Set your domain​
export EPINIO_DOMAIN="$(<INGRESS-IP>).sslip.io"
On an existing cluster, set EPINIO_DOMAIN to a wildcard domain that resolves to
your ingress (for example <INGRESS-IP>.sslip.io).
No cluster? Start minikube​
minikube start --cpus 4 --memory 8g
helm repo add traefik https://traefik.github.io/charts
helm repo update
helm upgrade --install traefik traefik/traefik --namespace traefik --create-namespace \
--set ingressClass.isDefaultClass=true \
--set ports.web.hostPort=80 \
--set ports.websecure.hostPort=443
On macOS or Windows the minikube node IP isn't directly reachable from the host;
run minikube tunnel in a separate terminal, or use Linux.
Set your domain​
Epinio needs a wildcard domain that points at your ingress. With minikube, use its
IP and a wildcard DNS service such as sslip.io:
export EPINIO_DOMAIN="$(minikube ip).sslip.io"
This installs Traefik bound to the node's :80/:443, so
the cluster is reachable at its node IP. minikube already provides a default
StorageClass, so storage needs no extra setup.
Install cert-manager​
helm repo add jetstack https://charts.jetstack.io
helm repo update
helm upgrade --install cert-manager jetstack/cert-manager \
--namespace cert-manager --create-namespace \
--set crds.enabled=true
Install Epinio​
helm repo add epinio https://epinio.github.io/helm-charts
helm repo update
helm upgrade --install epinio epinio/epinio \
--namespace epinio --create-namespace \
--set global.domain="$EPINIO_DOMAIN"
This also brings up the web dashboard at https://epinio.$EPINIO_DOMAIN (the same
host as the API).
Log in​
Navigate to the epinio.<EPINIO_DOMAIN> in your browser and log in.
When prompted, enter the default username admin and password password.
Push your first application​
In the application creation window, search for example-12factor in the epinio org under the GitHub source type.
The application creation window will guide you through your first install.
That is the whole loop: from sources to a live URL in one command.
Next steps​
- Work with namespaces to separate your apps.
- Browse every command in the CLI reference.
- See which application types are supported in supported applications.