I am trying to expose my Worklenz frontend service using a NodePort in Minikube on Windows 11, but I am unable to access it using http://192.168.49.2:30000. I can access it using minikube service worklenz-frontend-service --url, but that's not a permanent solution for me. this is my frontend deployment and services
apiVersion: apps/v1
kind: Deployment
metadata:
name: worklenz-frontend-deployment
labels:
app: worklenz-frontend
spec:
replicas: 1
selector:
matchLabels:
app: worklenz-frontend
template:
metadata:
labels:
app: worklenz-frontend
spec:
containers:
- name: worklenz-frontend
image: docker.io/kithceydigital/worklenz_frontend:latest
ports:
- containerPort: 5000
---
apiVersion: v1
kind: Service
metadata:
name: worklenz-frontend-service
spec:
selector:
app: worklenz-frontend
ports:
- protocol: TCP
port: 5000
targetPort: 5000
nodePort: 30000
type: NodePort
externalTrafficPolicy: Cluster
Kube-Proxy Mode: iptables NodePort Addresses: null
This is output for kubectl get pods
PS C:\Users\rkksg\Documents\js-projects\ceydigital\kubernetes\worklenz-k8> kubectl get pods
NAME READY STATUS RESTARTS AGE
worklenz-backend-deployment-844ff59b45-q8rrv 1/1 Running 0 2m6s
worklenz-db-0 0/1 ContainerCreating 0 108s
worklenz-frontend-deployment-6ddf679f88-6cqkp 1/1 Running 0 2m13s
PS C:\Users\rkksg\Documents\js-projects\ceydigital\kubernetes\worklenz-k8> kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 40h
worklenz-backend-service ClusterIP 10.111.33.122 <none> 3000/TCP 2m6s
worklenz-db ClusterIP None <none> 5432/TCP 108s
worklenz-frontend-service NodePort 10.108.63.67 <none> 5000:30000/TCP 2m13s
i have 3 deployments and services in my application
i used netstat -ano | Select-String "30000"
and it gives me no output
i can only access it when i use this
PS C:\Users\rkksg\Documents\js-projects\ceydigital\kubernetes\worklenz-k8> minikube service worklenz-frontend-service --url
http://127.0.0.1:2670
❗ Because you are using a Docker driver on windows, the terminal needs to be open to run it.
When I try http://192.168.49.2:30000 in my browser, it does not respond.
Tried curl http://192.168.49.2:30000
. it does not respond
Three pods are running without giving any problems in logs
here are logs of the three pods running
PS C:\Users\rkksg\Documents\js-projects\ceydigital\kubernetes\worklenz-k8> kubectl get pods
NAME READY STATUS RESTARTS AGE
worklenz-backend-deployment-7855d64798-swhpg 1/1 Running 0 25s
worklenz-db-0 1/1 Running 0 111s
worklenz-frontend-deployment-6ddf679f88-6cqkp 1/1 Running 0 23m
PS C:\Users\rkksg\Documents\js-projects\ceydigital\kubernetes\worklenz-k8> kubectl logs worklenz-backend-deployment-7855d64798-swhpg
> [email protected] start
> node ./build/bin/www
notifications-cron-job: (cron) Email notifications job ready.
daily-digest-cron-job: (cron) Daily digest job ready.
project-digest-cron-job: (cron) Project digest job ready.
Listening on port 3000
DbTaskStatusChangeListener connected.
PS C:\Users\rkksg\Documents\js-projects\ceydigital\kubernetes\worklenz-k8> kubectl logs worklenz-backend-deployment-7855d64798-swhpg
> [email protected] start
> node ./build/bin/www
notifications-cron-job: (cron) Email notifications job ready.
daily-digest-cron-job: (cron) Daily digest job ready.
project-digest-cron-job: (cron) Project digest job ready.
Listening on port 3000
DbTaskStatusChangeListener connected.
PS C:\Users\rkksg\Documents\js-projects\ceydigital\kubernetes\worklenz-k8> kubectl logs worklenz-frontend-deployment-6ddf679f88-6cqkp
INFO Accepting connections at http://localhost:5000
HTTP 3/19/2025 2:58:26 AM 10.244.0.1 GET /
HTTP 3/19/2025 2:58:26 AM 10.244.0.1 Returned 200 in 44 ms
HTTP 3/19/2025 2:58:27 AM 10.244.0.1 GET /assets/js/index-DQn5Id1F.js
HTTP 3/19/2025 2:58:27 AM 10.244.0.1 GET /assets/js/antd-B1IHu5tK.js
HTTP 3/19/2025 2:58:27 AM 10.244.0.1 GET /assets/js/i18n-MZoVdmad.js
HTTP 3/19/2025 2:58:27 AM 10.244.0.1 GET /assets/css/index-D8BAkfl4.css
HTTP 3/19/2025 2:58:27 AM 10.244.0.1 Returned 200 in 3 ms
HTTP 3/19/2025 2:58:27 AM 10.244.0.1 Returned 200 in 5 ms
HTTP 3/19/2025 2:58:27 AM 10.244.0.1 Returned 200 in 18 ms
HTTP 3/19/2025 2:58:27 AM 10.244.0.1 Returned 200 in 24 ms
HTTP 3/19/2025 2:58:27 AM 10.244.0.1 GET /locales/en/translation.json
HTTP 3/19/2025 2:58:27 AM 10.244.0.1 Returned 200 in 2 ms
HTTP 3/19/2025 2:58:27 AM 10.244.0.1 GET /locales/en/auth/login.json
HTTP 3/19/2025 2:58:27 AM 10.244.0.1 GET /assets/ico/favicon-B1xYTh5K.ico
HTTP 3/19/2025 2:58:27 AM 10.244.0.1 Returned 200 in 4 ms
HTTP 3/19/2025 2:58:27 AM 10.244.0.1 Returned 200 in 4 ms
HTTP 3/19/2025 2:58:27 AM 10.244.0.1 GET /assets/ico/favicon-B1xYTh5K.ico
HTTP 3/19/2025 2:58:27 AM 10.244.0.1 Returned 304 in 1 ms
PS C:\Users\rkksg\Documents\js-projects\ceydigital\kubernetes\worklenz-k8> kubectl logs worklenz-db-0
PostgreSQL Database directory appears to contain a database; Skipping initialization
2025-03-19 03:08:51.264 UTC [1] LOG: starting PostgreSQL 15.12 (Debian 15.12-1.pgdg120+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 12.2.0-14) 12.2.0, 64-bit
2025-03-19 03:08:51.265 UTC [1] LOG: listening on IPv4 address "0.0.0.0", port 5432
2025-03-19 03:08:51.265 UTC [1] LOG: listening on IPv6 address "::", port 5432
2025-03-19 03:08:51.269 UTC [1] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2025-03-19 03:08:51.274 UTC [29] LOG: database system was shut down at 2025-03-19 03:08:49 UTC
2025-03-19 03:08:51.278 UTC [1] LOG: database system is ready to accept connections
Why is my NodePort (30000) not accessible via Minikube IP? Is this related to Windows networking, Docker driver, or Minikube setup? How can I make my NodePort accessible without using minikube service? This is my first time using Kubernetes is there problem in my configuration? this is my repo link