/docker-maven-plugin

Maven plugin for running and creating Docker images

Primary LanguageJavaApache License 2.0Apache-2.0

docker-maven-plugin

Maven Central Circle CI Coverage Technical Debt

This is a Maven plugin for building Docker images and managing containers for integration tests. It works with Maven 3.0.5 and Docker 1.6.0 or later.

Goals

Goal Description Default Lifecycle Phase
docker:start Create and start containers pre-integration-test
docker:stop Stop and destroy containers post-integration-test
docker:build Build images install
docker:watch Watch for doing rebuilds and restarts
docker:push Push images to a registry deploy
docker:remove Remove images from local docker host post-integration-test
docker:logs Show container logs
docker:source Attach docker build archive to Maven project package
docker:save Save image to a file
docker:volume-create Create a volume to share data between containers pre-integration-test
docker:volume-remove Remove a created volume post-integration-test
docker:copy Copy files and directories from a container post-integration-test

Documentation

  • The User Manual [PDF] has a detailed reference for all and everything.
  • The Introduction is a high level overview of this plugin's features and provides an usage example. provided goals and possible configuration parameters.
  • Examples are below samples/ and contain example setups which you can use as blueprints for your own projects.
  • ChangeLog has the release history of this plugin.
  • Contributing explains how you can contribute to this project. Pull requests are highly appreciated!

Docker API Support

  • Docker 1.6 (v1.18) is the minimal required version
  • Docker 1.8.1 (v1.20) is required for docker:watch
  • Docker 1.9 (v1.21) is required for using custom networks and build args.