postgresql - How do I expose Docker a Docker port via Kubernetes in Google Cloud? -


i trying wrap head around provisioning docker instances in kubernetes on google cloud. have build replica controller specifies single pod , defined port exposed, not being exposed.

here containers.yaml:

apiversion: v1 kind: replicationcontroller metadata:   name: postgres spec:   replicas: 1   selector:     app: postgres   template:     metadata:       name: postgres       labels:         app: postgres     spec:       containers:       - name: postgres         image: us.gcr.io/bobsapp-1008/postgres:9.4         ports:           -             containerport: 5432             name: postgres             protocol: tcp 

here result of docker ps while running root in compute engine instance running pod:

root@gke-legal-data-6fddb637-node-49l5:/home/eric# docker ps container id        image                                       command                created              status              ports               names c16b7e0071f4        us.gcr.io/bobsapp-1008/postgres:9.4          "/docker-entrypoint.   minute ago   minute                       k8s_postgres.82df2fa1_postgres-7wd6n_default_4e36d84b-2c1f-11e5-8f6f-42010af0664d_2a996ec3 036f8d6375bc        gcr.io/google_containers/pause:0.8.0        "/pause"               minute ago   minute                       k8s_pod.e4cc795_postgres-7wd6n_default_4e36d84b-2c1f-11e5-8f6f-42010af0664d_8b058463 14c6331ce91f        gcr.io/google_containers/heapster:v0.15.0   "/heapster --source=   3 minutes ago        3 minutes                            k8s_heapster.bb306f05_monitoring-heapster-v5-p0orx_kube-system_983e585e-2bd7-11e5-8f6f-42010af0664d_b8b0aff1 8ab049b45e57        gcr.io/google_containers/pause:0.8.0        "/pause"               6 hours ago          6 hours                              tender_rosalind 03c9810efd2d        gcr.io/google_containers/fluentd-gcp:1.8    "\"/bin/sh -c '/usr/   8 hours ago          8 hours                              k8s_fluentd-cloud-logging.7721935b_fluentd-cloud-logging-gke-legal-data-6fddb637-node-49l5_kube-system_d0feac1ad02da9e97c4bf67970ece7a1_520ad44a 8ad81f1eb559        gcr.io/google_containers/pause:0.8.0        "/pause"               8 hours ago          8 hours                              k8s_pod.e4cc795_monitoring-heapster-v5-p0orx_kube-system_983e585e-2bd7-11e5-8f6f-42010af0664d_d321075c 931e38c13e91        gcr.io/google_containers/pause:0.8.0        "/pause"               8 hours ago          8 hours                              k8s_pod.e4cc795_fluentd-cloud-logging-gke-legal-data-6fddb637-node-49l5_kube-system_d0feac1ad02da9e97c4bf67970ece7a1_69d90d4f 

you can see there no ports exposed. why isn't postgres (port 5432) exposed?

each pod in kubernetes given own ip address on cluster's private network. port postgres container has open on ip address, not directly on host vm's ip.

if run kubectl pod postgres, should return pod's ip address, should able use reach postgres within cluster.

note using service common way give dns name pod or make group of replicated pods reachable @ same address.


Comments