Public Repository

Last pushed: 9 months ago
Short Description
DNS-based service discovery for Mesos
Full Description

Warning: The mesos-dns authors recommend running mesos-dns on the host directly using their statically compiled binary releases, not using docker. This image is provided primarily to simplify development and testing, but is not officially supported.


  • 0.5.2 - mesos-dns compiled on centos7 and extracted to a small scratch-based docker image
  • 0.5.2-bind-utils - mesos-dns compiled on centos7 and extracted to an alpine-based docker image with bind-utils installed to aid debugging

Example Usage

# host networking (faster than docker's bridge networking)
docker run -d --net=host -v "$(pwd)/config.json:/config.json" -v "$(pwd)/logs:/tmp" mesosphere/mesos-dns:0.5.2 /usr/bin/mesos-dns -v=2 -config=/config.json

# bridge networking 
docker run -d -p 53:53/udp -p 8123 -v "$(pwd)/config.json:/config.json" -v "$(pwd)/logs:/tmp" mesosphere/mesos-dns:0.5.2 /usr/bin/mesos-dns -v=2 -config=/config.json


Image Builder: (make docker)
Bind-Utils Branch:
Example Dev/Test Cluster:

Docker Pull Command

Comments (12)
a year ago

Hi All,

I have created a wrapper mesos-dns which generates a config.json based upon environment variables before starting the actual mesos-dns. The sources can be found on and the resulting docker image on xebia/mesos-dns.



2 years ago

+1 Sure would be nice to have this up to date, seeing as this appears to be the "official" Mesosphere version. I guess I'll go search through the many, many other "mesos-dns" repos to try to find another.

2 years ago

+1 current version is v0.5.1

2 years ago

+1 on keeping up with the mesos-dns repo as we are now at 0.4

2 years ago

Would be nice to have version tags here

2 years ago

A bug appeared with mesos 0.24.0 that has been fixed with this PR Would be nice to bump up to 0.3.0.
In the process you guys could automate the build and add the Dockerfile directly in the hub.

2 years ago

Would be cool to be able to override config values via environment vars.

2 years ago

nice @bergerx

I run like this:
sudo docker run --net=host -d -v "/etc/mesos-dns/config.json:/config.json" mesosphere/mesos-dns /mesos-dns -config=/config.json

it is best to avoid the NAT IMO.

2 years ago

It could be helpful for other if you put here a brief usage information, for those who do not want to lose time discovering how to use this, i'm running it like:

docker run -d --name mesos-dns -p 53:53/udp -v ~/mesos-dns-config.json:/config.json mesosphere/mesos-dns /mesos-dns -v 2 -config=config.json
2 years ago

yes the project is:
and the Dockerfile is included.

here is the current file:

FROM scratch
MAINTAINER Mesosphere Package Builder <>
ADD mesos-dns_rootfs.tar.gz /
CMD ["/usr/bin/mesos-dns"]