github.com/docker/compose-on-kubernetes@v0.5.0/docs/install-on-microk8s.md (about) 1 # Install on MicroK8s 2 3 ## Pre-requisites 4 - [MicroK8s](https://microk8s.io/) 5 - To install etcd using these instructions, you must have [Helm](https://helm.sh) in your client environment. 6 - [Download the Compose on Kubernetes installer](https://github.com/docker/compose-on-kubernetes/releases). 7 - Ensure storage and dns are enabled: `microk8s.enable storage dns` 8 - `kubectl` availabe in path - if it's not already available it can be aliased from the snap with: `sudo snap alias microk8s.kubectl kubectl`. 9 10 ## Create compose namespace 11 12 - Confirm that MicroK8s is working with `microk8s.inspect`. 13 - Create a compose namespace by running `microk8s.kubectl create namespace compose`. 14 15 ## Populate Kubernetes Config 16 17 If you do not already have a `~/.kube/config` file create it with `microk8s.kubectl config view --raw > ~/.kube/config`. 18 19 ## Deploy etcd 20 21 Compose on Kubernetes requires an etcd instance (in addition to the kube-system etcd instance). Please follow [How to deploy etcd](./deploy-etcd.md). 22 23 ## Deploy Compose on Kubernetes 24 25 Run `./installer-[darwin|linux|windows.exe] -namespace=compose -etcd-servers=http://compose-etcd-client:2379`. 26 27 ## Deploy a stack in the cluster 28 29 By now you should be able to [Check that Compose on Kubernetes is installed](../README.md#check-that-compose-on-kubernetes-is-installed): 30 31 ```bash 32 $ microk8s.kubectl api-versions | grep compose 33 compose.docker.com/v1beta1 34 compose.docker.com/v1beta2 35 ``` 36 37 If the APIs are visible it should be possible to [Deploy a stack](../README.md#deploy-a-stack). 38 39 If everything has worked the `web-published` service should be visible from `kubectl` e.g: 40 41 ``` 42 $ kubectl get services 43 NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE 44 db ClusterIP None <none> 55555/TCP 3m31s 45 kubernetes ClusterIP 10.152.183.1 <none> 443/TCP 33m 46 web ClusterIP None <none> 55555/TCP 3m31s 47 web-published LoadBalancer 10.152.183.180 <pending> 33000:30218/TCP 3m31s 48 words ClusterIP None <none> 55555/TCP 3m31s 49 ``` 50 51 In this case it's possible to open <http://10.152.183.180:33000/> in the browser, but your Cluster IP will most likely be different.