Pre-Requisites
Docker for Desktop
Install Docker for Desktop v2.3.0.5 for your OS
Windows:
https://desktop.docker.com/win/stable/48029/Docker%20Desktop%20Installer.exe
Mac:
https://desktop.docker.com/mac/stable/48029/Docker.dmg
Configure the resources for Docker
You'll want to have at least 4-6 cpus and about 8-16Gb of ram if you can spare it.
Enable Kubernetes
Installation
On Windows
For windows, we are going to use a Ubuntu docker container to install Kubeflow into our Kubernetes running in Docker for Desktop.
From a Command Prompt:
> docker run -it --rm -v C:\Users\<USER>\.kube:/root/.kube ubuntu:20.04 bash apt-get update apt-get install -y curl apt-get install -y git apt-get install -y wget #install kubectl curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl #install kfctl wget https://github.com/kubeflow/kfctl/releases/download/v1.0.2/kfctl_v1.0.2-0-ga476281_linux.tar.gz tar xvfz kfctl_v1.0.2-0-ga476281_linux.tar.gz cp kfctl /usr/local/bin #install kubeflow export KF_NAME=kubeflow export BASE_DIR=/opt/ubuntu/ export KF_DIR=${BASE_DIR}/${KF_NAME} export CONFIG_URI="https://raw.githubusercontent.com/kubeflow/manifests/v1.0-branch/kfdef/kfctl_k8s_istio.v1.0.2.yaml" mkdir -p ${KF_DIR} cd ${KF_DIR} kfctl apply -V -f ${CONFIG_URI}
On Mac and Windows
Install kfctl
On Windows
#install kfctl wget https://github.com/kubeflow/kfctl/releases/download/v1.0.2/kfctl_v1.0.2-0-ga476281_linux.tar.gz tar xvfz kfctl_v1.0.2-0-ga476281_linux.tar.gz cp kfctl /usr/local/bin
On Mac
wget https://github.com/kubeflow/kfctl/releases/download/v1.2.0/kfctl_v1.2.0-0-gbc038f9_darwin.tar.gz tar xvfz kfctl_v1.2.0-0-gbc038f9_darwin.tar.gz sudo cp kfctl /usr/local/bin/.
Install Kubeflow
On Windows in Container
#install kubeflow export KF_NAME=kubeflow export BASE_DIR=/opt/ubuntu/ export KF_DIR=${BASE_DIR}/${KF_NAME} export CONFIG_URI="https://raw.githubusercontent.com/kubeflow/manifests/v1.0-branch/kfdef/kfctl_k8s_istio.v1.0.2.yaml" mkdir -p ${KF_DIR} cd ${KF_DIR} kfctl apply -V -f ${CONFIG_URI}
On Mac
#install kubeflow export KF_NAME=kubeflow export BASE_DIR=/Users/<USERNAME>/kfctlinstall export KF_DIR=${BASE_DIR}/${KF_NAME} export CONFIG_URI="https://raw.githubusercontent.com/kubeflow/manifests/v1.0-branch/kfdef/kfctl_k8s_istio.v1.0.2.yaml" mkdir -p ${KF_DIR} cd ${KF_DIR} kfctl apply -V -f ${CONFIG_URI}
Wait for containers to all start. This could take a while... up to 30 minutes.
$ kubectl get pods --all-namespaces $ kubectl get pods --all-namespaces |grep -v Running |grep -v Completed |wc -l
**** From a WINDOWS CMD PROMPT (Windows) or teminal (MAC), enable port forwarding:
$ kubectl port-forward -n istio-system svc/istio-ingressgateway 8080:80
Use it
Navigate to http://localhost:8080/
For namespace, type default and click Finish.
References
Reference | URL |
---|---|
Install Kubeflow on a single-node Kubernetes v1.18.2 cluster | https://illya13.github.io/RL/tutorial/2020/05/03/install-kubeflow-on-single-node-kubernetes-v1.18.2.html |
How to use Docker Desktop for Mac or Windows to run Kubeflow | https://morioh.com/p/7c45a5df9034 |
Kubeflow: How to Install and Launch Kubeflow on your Local Machine | https://towardsdatascience.com/kubeflow-how-to-install-and-launch-kubeflow-on-your-local-machine-e0d7b4f7508f |