Configure Kubernetes with access to internet

Sorry for noob question but I’ve only started my adventures with K8S. I have a virtual machine in the Cloud Guru cloud and I’ve set up my deployment, service and ingress (nginx controller) and when I curl my service by IP or my ingress by Cluster IP it works fine but when I try to access my services from the internet through my browser it doesn’t work, I get Site can’t be reached error. Seems like my virtual machine doesn’t “know” what to do with the request so I’ve installed Nginx on the virtual machine (outside the cluster) and set up the load balancing to point to my k8s cluster and it works. Seems like the ingress nginx works on cluster level not system level so I needed to “tell” my VM what to do with the request. Does k8s even support that? Is it possible to configure k8s for internet access or am I missing something?
This is my ingress file

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: my-first-ingress
  annotations:
    kubernetes.io/ingress.class: nginx
spec:
  ingressClassName: nginx
  rules:
  - host: test.mylabserver.com
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: supermario
            port:
              number: 8060