Unable to connect to minikube cluster with Cloud VM public IP

Cluster information:

Kubernetes version: v1.28.3
Cloud being used: Bare Metal Cloud (on OVHCloud)
Installation method: Minikube
Host OS: Debian 10
CNI and version: /
CRI and version: docker://24.0.7

I’m new to Kubernetes and I’ve been trying to deploy Nginx Ingress Controller on a Kubernetes cluster on a single machine. Behind the Ingress there is a single service (Jenkins). I’m not able to connect to the service with the public IP of the VM and the port of the service.

I’ve tried multiple options of deployments (cloud and bare metal) and I always get “Connection Refused” even with curl from inside the VM on <vm_public_ip>:<jenkis_service_port>/jenkins. If I port forward all communication on port :80 to redirect to <minikube_node_ip>:<jenkins_service_port> then I can get to the service, but I think this is not a good solution since we are going to have multiple services.

Even following this guide yielded the same result for the web service: Set up Ingress on Minikube with the NGINX Ingress Controller | Kubernetes

The deployments for the Ingress Controller that I’ve tried are:

kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.10.0/deploy/static/provider/cloud/deploy.yaml
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.10.0/deploy/static/provider/baremetal/deploy.yaml

The Jenkins ingress file is the following:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: ingress-jenkins
  annotations:
    kubernetes.io/ingress.class: ingress-nginx
spec:
  rules:
  - http:
      paths:
      - path: /jenkins
        pathType: Prefix
        backend:
          service:
            name: jenkins-service
            port: 
              number: 80

We plan to buy cloud provided Load Balancer from OVHCloud since we’ve read that you need to have it in front of the Ingress Controller. Any help would be appreciated.