Running Tomcat with PostgreSql using Dockerfile

I want to run a Tomcat with PostgreSql database within the same Dockerfile.

I have the following Dockerfile

  • Updating docker-compose Ubuntu 15.10
  • What is the best way to run test in docker before deploying
  • Only first line being read in Dockerfile
  • Docker MySQL: create new user
  • Docker and rancher
  • Creating first docker container: Can't find host system file on build
  • FROM tomcat:8-jre7
    MAINTAINER "Sonam <>"
    RUN apt-get -y update
    Add simplewebapp.war /usr/local/tomcat/webapps/
    RUN apt-get update && apt-get -y upgrade
    FROM postgres

    When I run the docker image, I can’t access the Tomcat like I could if I comment out the postgres. How do I get Postgres running and Tomcat too?


  • Installing cPhalcon on AWS Docker Image
  • Spring Boot with MongoDB on Docker
  • Conditional COPY/ADD in Dockerfile?
  • docker-compose up can't find module, but running from bash works
  • traefik hostname works for web apps but not for mongodb
  • How can I run Win32OLE calls from ubuntu?
  • One Solution collect form web for “Running Tomcat with PostgreSql using Dockerfile”

    You can only take one image as your base, just the same as you can only have one OS installed.

    If you need to have two applications installed, then you need to build your own container – either starting from one and running the sequence of commands in the Dockerfile you need to install the other app, or just start from a base OS image, and install both.

    Alternatively – why do you need them in the same container? Something like --link might do what you want, more effectively. Just run two containers, and link them.

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