Supported tags and respective
Where to file issues:
the Maven Project
Supported Docker versions:
the latest release (down to 1.6 on a best-effort basis)
What is Maven?
Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information.
How to use this image
Create a Dockerfile in your Maven project
FROM maven:3.2-jdk-7-onbuild CMD ["do-something-with-built-packages"]
Put this file in the root of your project, next to the pom.xml.
This image includes multiple ONBUILD triggers which should be all you need to bootstrap. The build will
COPY . /usr/src/app and
RUN mvn install.
You can then build and run the image:
$ docker build -t my-maven . $ docker run -it --name my-maven-script my-maven
Run a single Maven command
For many simple projects, you may find it inconvenient to write a complete
Dockerfile. In such cases, you can run a Maven project by using the Maven Docker image directly, passing a Maven command to
$ docker run -it --rm --name my-maven-project -v "$PWD":/usr/src/mymaven -w /usr/src/mymaven maven:3.2-jdk-7 mvn clean install
i386/maven images come in many flavors, each designed for a specific use case.
This is the defacto image. If you are unsure about what your needs are, you probably want to use this one. It is designed to be used both as a throw away container (mount your source code and start the container to start your app), as well as the base to build other images off of.
This image does not contain the common packages contained in the default tag and only contains the minimal packages needed to run
i386/maven. Unless you are working in an environment where only the
i386/maven image will be deployed and you have space constraints, we highly recommend using the default image of this repository.
View license information for the software contained in this image.