Ubuntu 26.04

Minikube : Basic Usage2026/05/07

 

This is the basic operation on Single Node Kubernetes Cluster on Minikube.

[1] Create or Delete Pods.
# run [test-nginx] pods

ubuntu@dlp:~$
kubectl create deployment test-nginx --image=nginx

deployment.apps/test-nginx created
ubuntu@dlp:~$
kubectl get pods

NAME                         READY   STATUS    RESTARTS   AGE
test-nginx-9496d7c6b-qg2sr   1/1     Running   0          11s

# show environment variable for [test-nginx] pod

ubuntu@dlp:~$
kubectl exec test-nginx-9496d7c6b-qg2sr -- env

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
HOSTNAME=test-nginx-9496d7c6b-qg2sr
KUBERNETES_PORT_443_TCP=tcp://10.96.0.1:443
KUBERNETES_PORT_443_TCP_PROTO=tcp
KUBERNETES_PORT_443_TCP_PORT=443
KUBERNETES_PORT_443_TCP_ADDR=10.96.0.1
KUBERNETES_SERVICE_HOST=10.96.0.1
KUBERNETES_SERVICE_PORT=443
KUBERNETES_SERVICE_PORT_HTTPS=443
KUBERNETES_PORT=tcp://10.96.0.1:443
NGINX_VERSION=1.29.8
NJS_VERSION=0.9.6
NJS_RELEASE=1~trixie
ACME_VERSION=0.3.1
PKG_RELEASE=1~trixie
DYNPKG_RELEASE=1~trixie
HOME=/root

# shell access to [test-nginx] pod

ubuntu@dlp:~$
kubectl exec -it test-nginx-9496d7c6b-qg2sr -- bash

root@test-nginx-9496d7c6b-qg2sr:/#
exit
# show logs of [test-nginx] pod

ubuntu@dlp:~$
kubectl logs test-nginx-9496d7c6b-qg2sr

/docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration
/docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/
/docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh
10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf
10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf
/docker-entrypoint.sh: Sourcing /docker-entrypoint.d/15-local-resolvers.envsh
/docker-entrypoint.sh: Launching /docker-entrypoint.d/20-envsubst-on-templates.sh
/docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh
/docker-entrypoint.sh: Configuration complete; ready for start up
2026/05/06 06:46:21 [notice] 1#1: using the "epoll" event method
2026/05/06 06:46:21 [notice] 1#1: nginx/1.29.8
2026/05/06 06:46:21 [notice] 1#1: built by gcc 14.2.0 (Debian 14.2.0-19)
2026/05/06 06:46:21 [notice] 1#1: OS: Linux 6.6.95
2026/05/06 06:46:21 [notice] 1#1: getrlimit(RLIMIT_NOFILE): 1048576:1048576
2026/05/06 06:46:21 [notice] 1#1: start worker processes
2026/05/06 06:46:21 [notice] 1#1: start worker process 29
2026/05/06 06:46:21 [notice] 1#1: start worker process 30
.....
.....

# scale out pods

ubuntu@dlp:~$
kubectl scale deployment test-nginx --replicas=3

deployment.apps/test-nginx scaled
ubuntu@dlp:~$
kubectl get pods

NAME                         READY   STATUS    RESTARTS   AGE
test-nginx-9496d7c6b-qg2sr   1/1     Running   0          2m36s
test-nginx-9496d7c6b-t5m6d   1/1     Running   0          8s
test-nginx-9496d7c6b-ztrk4   1/1     Running   0          8s

# set service

ubuntu@dlp:~$
kubectl expose deployment test-nginx --type="NodePort" --port 80

service/test-nginx exposed
ubuntu@dlp:~$
kubectl get services test-nginx

NAME         TYPE       CLUSTER-IP      EXTERNAL-IP   PORT(S)        AGE
test-nginx   NodePort   10.101.96.212   <none>        80:31424/TCP   5s

ubuntu@dlp:~$
minikube service test-nginx --url

http://192.168.39.239:31424
ubuntu@dlp:~$
curl http://192.168.39.239:31424

<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
.....
.....
<p><em>Thank you for using nginx.</em></p>
</body>
</html>

# delete service

ubuntu@dlp:~$
kubectl delete services test-nginx

service "test-nginx" deleted
# delete pods

ubuntu@dlp:~$
kubectl delete deployment test-nginx

deployment.extensions "test-nginx" deleted
Matched Content