There are a couple of options. The easiest way is to expose the container via a port on the host when you do the run command. For example:
$ docker run -d -p 5432:5432 postgres
8c04d3401878cc93503950ab3f118f0c65960719b969adb06a50bb2a482e5147
Now you should be able to access the service via port 5432 on the host e.g.
$ psql -h 0.0.0.0 -p 5432 -U postgres
You could also look into the various Docker networking options such as --net=host
, but I wouldn't recommend this unless you know what you're doing. The documentation is here http://docs.docker.com/articles/networking/.
However, arguably the best solution is to place the other apps in containers as well.