docs/maven/content.md

34 lines
1.2 KiB
Markdown

# What is Maven?
[Apache Maven](http://maven.apache.org) 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.
%%LOGO%%
# How to use this image
## Create a Dockerfile in your Maven project
```dockerfile
FROM %%IMAGE%%: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:
```console
$ 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`:
```console
$ docker run -it --rm --name my-maven-project -v "$PWD":/usr/src/mymaven -w /usr/src/mymaven %%IMAGE%%:3.2-jdk-7 mvn clean install
```