How to run the container:

docker run -d -p 80:80 -h cartodb.localhost sverhoeven/cartodb

The CartoDB instance has been configured with the hostname cartodb.localhost, this means the web browser and web server need to be able to resolve cartodb.localhost to an IP adress of the machine where the web server is running.
This can be done by adding cartodb.localhost alias to your hosts file. For example

sudo sh -c 'echo 127.0.1.1 cartodb.localhost >> /etc/hosts'

(For Windows it will be C:\Windows\System32\drivers\etc\hosts)

How to use a different hostname:

For example to use cartodb.example.com as a hostname start with:

docker run -d -p 80:80 -h cartodb.example.com sverhoeven/cartodb

The chosen hostname should also resolve to an IP adress of the machine where the web server is running.

If you don't have a domain/subdomain pointing to your server yet, you can use the servers external ip address:

Geocoder

The external geocoders like heremaps, mapbox, mapzen or tomtom have dummy api keys and do not work.
No attempts have been made or will be made in this Docker image to get the external geocoders to work.

The internal geocoder is configured, but contains no data inside the image.

How to build the image:

The build uses the master branches of the CartoDB GitHub repositories. A fresh build may fail when code requires newer dependencies then the Dockerfile provides or when code is not stable at the moment of building.