apiVersion: v1 kind: Service metadata: name: mothership spec: ports: - name: app port: 8006 protocol: TCP targetPort: 8006 clusterIP: None type: ClusterIP --- apiVersion: v1 kind: Endpoints metadata: name: mothership subsets: - addresses: - ip: 192.168.21.253 ports: - name: app port: 8006 protocol: TCP #--- # #apiVersion: networking.k8s.io/v1 #kind: Ingress #metadata: # name: mothership-ingress # annotations: # kubernetes.io/ingress.class: nginx # cert-manager.io/cluster-issuer: letsencrypt-production # nginx.ingress.kubernetes.io/whitelist-source-range: "192.168.0.0/16" # nginx.ingress.kubernetes.io/backend-protocol: "HTTPS" # nginx.ingress.kubernetes.io/proxy-buffering: "off" # nginx.ingress.kubernetes.io/proxy-connect-timeout: "3600s" # nginx.ingress.kubernetes.io/proxy_read_timeout: "3600s" # nginx.ingress.kubernetes.io/proxy_send_timeout: "3600s" # nginx.ingress.kubernetes.io/client_max_body_size: "5120m" #spec: # rules: # - host: mothership.internal.durp.info # http: # paths: # - path: / # pathType: Prefix # backend: # service: # name: mothership # port: # number: 8006 # tls: # - hosts: # - mothership.internal.durp.info # secretName: mothership-tls # --- apiVersion: traefik.containo.us/v1alpha1 kind: IngressRoute metadata: name: mothership-ingress annotations: cert-manager.io/cluster-issuer: letsencrypt-production spec: entryPoints: - websecure routes: - match: Host(`mothership.internal.durp.info`) middlewares: - name: whitelist namespace: traefik kind: Rule services: - name: mothership port: 8006 scheme: https tls: secretName: mothership-tls --- apiVersion: cert-manager.io/v1 kind: Certificate metadata: name: mothership-tls spec: secretName: mothership-tls issuerRef: name: letsencrypt-production kind: ClusterIssuer commonName: "mothership.internal.durp.info" dnsNames: - "mothership.internal.durp.info"