Tutorial on how to use Docker within intelliJ -
Branch: master
Clone or download
Latest commit 997f389 Apr 23, 2016
Type Name Latest commit message Commit time
Failed to load latest commit information.
img Updated pic, description and Gradle build script Apr 23, 2016
.gitignore Updates gitignore Apr 22, 2016
LICENSE First release Apr 22, 2016
README.adoc Update README Apr 23, 2016
gradlew First release Apr 22, 2016
gradlew.bat First release Apr 22, 2016
settings.gradle First release Apr 22, 2016


intelliJ ♥ Docker Tutorial

A short tutorial on how to use Docker within intelliJ and with a little help from Gradle.


  • install intelliJ Docker plugin

  • install Docker Machine (https://docs.docker.com/machine/get-started)

  • check that there is a default Docker Machine: docker-machine ps. If there is no default machine create one: docker-machine create --driver virtualbox default.

  • start the default Docker Machine: docker-machine start default.

  • bind the env vars to the shell: eval "$(docker-machine env default)"

  • check if everything is correct: docker ps

Using Docker with intelliJ

1) Setup Docker cloud provider in intelliJ global preferences as shown below.

Setup Docker Cloud Provider
You can get the API URL by executing docker-machine ls and using the shown IP & port for the default machine.

2) Check connection to Docker daemon in intelliJ "Docker" tab

Check connection in "Docker" tab

3) Create new project from version control using github (https://github.com/adersberger/intellij-docker-tutorial.git)

4) Create a new run configuration to deploy application to Docker as shown on the following screenshots:

First tab
Be sure not to forget to add the Gradle tasks as a "before launch" action as shown at the very bottom of the screenshot.
First tab
The same is also possible for Docker Compose files. Just point the "Deployment" dropdown to the Docker Compose file.

5) Run the configuration and inspect the Docker container. A browser will open automagically and point to the REST endpoint. Within intelliJ you can access the containers console output, environment variables, port bindings etc.

First tab

6) Celebrate!