At home i wanted to have my own kubernetes cluster. I own 2 raspberry pi based on ubuntu, so i decided to install microK8s:
--> https://ubuntu.com/blog/what-can-you-do-with-microk8s
The installation is very well explained here:
https://ubuntu.com/tutorials/install-a-local-kubernetes-with-microk8s#1-overview
BUT: i found nowhere a tutorial how to run an container and expose the port in a way that i is reachable from other pc like localhost.
So here we go:
kubectl create deployment web --image=nginx
kubectl expose deployment web --type=NodePort --port=80
After that just do:
# kubectl get all
NAME READY STATUS RESTARTS AGE
pod/web-96d5df5c8-5xvfc 1/1 Running 0 112s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/kubernetes ClusterIP 10.152.183.1 <none> 443/TCP 2d5h
service/web NodePort 10.152.183.66 <none> 80:32665/TCP 105s
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/web 1/1 1 1 112s
NAME DESIRED CURRENT READY AGE
replicaset.apps/web-96d5df5c8 1 1 1 112s
On you kubernetes node you can reach the service with 10.152.183.66:80.
For getting the nginx from another pc just use:
<yourkuberneteshost>:32665
For me: