# Host Docker private registry using Ingress

Make sure ingress nginx is installed and following command shows external Ip assigned

```shell
kubectl get services -o wide -n ingress-nginx
```

[![image-1621793557226.png](https://book-stack.rapidoreach.com/uploads/images/gallery/2021-05/scaled-1680-/5UWs9ETMbUvzk3OF-image-1621793557226.png)](https://book-stack.rapidoreach.com/uploads/images/gallery/2021-05/5UWs9ETMbUvzk3OF-image-1621793557226.png)

if external ip is not assigned then nginx controller needs modifications. Refer: [Ingress installation](https://book-stack.rapidoreach.com/books/setting-up-of-kubernetes-cluster/page/installation-of-ingress-nginx)

Create ingress

#### `prd-ingress-service.yaml`

```YAML
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: prd-ingress-service
  annotations:
    # use the shared ingress-nginx
    kubernetes.io/ingress.class: "nginx"
  labels:
    name: prd-ingress-service
spec:
  tls:
    - hosts:
      - <your-subdomain-domain>
      secretName: <tls-certificate secret>
  rules:
  - host: <your-subdomain-domain>
    http:
      paths:
      - pathType: Prefix
        path: "/"
        backend:
          service:
            name: <service-name>
            port:
              number: <service-local-port>

```

> Docker private registry will now be available over internet