Assign domain name to the container

I am looking for a way to assign a domain name to the container when it is started. For example, I want to start a web server container, and to be able to access web pages via domain name. Is there an easy way to do this ?

  • Docker mongodb config file
  • Error “DNS message ID mismatch” while pulling image
  • how can I find docker image with specific tag in docker registry in docker command line?
  • Docker-compose: Database is uninitialized
  • Docker db container running. Another process with pid <id> is using unix socket file
  • For dummies approach to build image and run own code on Docker
  • Adding permissions to host directory with docker-compose
  • using kerberos in a container, inside of openshift / kubernetes
  • How can I make JHipster applications REST services run on different docker containers?
  • cant run boot2docker in win 7 64bit strange virtual box error
  • Is it possible to create ipv4-enabled Docker Machine on Windows 10?
  • Should I use user-secrets or environment variables with docker
  • One Solution collect form web for “Assign domain name to the container”

    For all I know, Docker doesn’t provide this feature out of the box. But surely there are several workarounds here. In fact you need to deploy a DNS on your host that will distinguish the containers and resolve their domain names in dynamical IPs. So you could give a try to:

    1. Deploy some of Docker-aware DNS solutions (I suggest you to use SkyDNSv1/SkyDock);
    2. Configure your host to work with this DNS (by default SkyDNS makes the containers know each other by name, but the host is not aware of it);
    3. Run your containers with explicit --hostname (you will probably use scheme container_name.image_name.dev.skydns.local).

    You can skip step #2 and run your browser inside container too: it will discover the web application container by hostname.

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.