Docker Community Forums

Share and learn in the Docker community.

Public DNS for services with no endpoint

amazonwebservices

(Yoshiwaan) #1

I’m trying out a poc on Dockercloud using the following docker-cloud.yml file and running in AWS:

lb:
  image: dockercloud/haproxy
  links:
    - helloworld
  ports:
    - "80:80"
  roles:
    - global
helloworld:
  image: caapimdev/poc-helloworld
  target_num_containers: 1

The stack starts up fine (and gets called poc-helloworld, is that taken from the directory docker-cloud.yml is in?) and works okay. My lb service is created and is available publicly, I can see the endpoint via the UI, the helloworld service is also created okay, and the UI states no endpoints.

If I run docker-cloud services ps --stack poc-helloworld then I see that all of the services in the stack have a public DNS name assigned, even if they don’t actually have an externally accessible endpoint. Is this because that’s how the stack internally locates service addresses, i.e. it still uses that public dns even if it’s just a call internal to the stack?

Unfortunately I’m only on the free plan for now so can’t see what happens when I scale up more nodes. Does every node in the cluster get added to a service public dns address, or does only 1 node act as the entrypoint for the service, or do only nodes that have containers as a part of that service get added to the record (and so they’re basically DNS round robin load balanced)?