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. No cluster? Start one with minikube below.
For anything beyond a trial, see system requirements and the full installation guide.
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
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.
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"
On an existing cluster, set EPINIO_DOMAIN to a wildcard domain that resolves to
your ingress (for example <INGRESS-IP>.sslip.io).
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"
Install the Epinio CLI​
Download the binary (Linux shown, for macOS replace linux with darwin):
curl -Lo epinio https://github.com/epinio/epinio/releases/latest/download/epinio-linux-x86_64
chmod +x epinio
sudo mv epinio /usr/local/bin/
For macOS, Windows, and signature verification, see Install the Epinio CLI. If you use Homebrew:
brew install epinio
Log in​
epinio login -u admin "https://epinio.$EPINIO_DOMAIN"
When prompted, enter the default password password, then press y to trust the
self-signed certificate. Change the default by setting api.adminPassword in the
Helm chart (see the Helm chart reference).
Push your first application​
git clone https://github.com/epinio/example-12factor.git
epinio push --name sample --path example-12factor
When the push finishes, Epinio prints the application URL. Open it in your browser, or print it again with:
epinio app show sample
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.