Duncan Grant ebc8f7568f Use container host ip not manager ip
When providing node ip in metadata jclouds was using the
ip of the docker manager which was fine for docker machine
but fails when using a swarm cluster.  This uses the ip returned
from docker.
2016-06-06 16:16:44 +02:00
..
2016-06-06 16:16:44 +02:00
2015-11-13 16:47:01 +01:00

Docker as a local cloud provider

jclouds-docker is a local cloud provider modelled on docker. Similar to other jclouds supported providers, it supports the same portable abstractions offered by jclouds.

##Setup

Please follow these steps to configure your workstation for jclouds-docker:

If you are using docker-machine then it can also manage certificates and help you setup DOCKER_CERT_PATH and DOCKER_HOST environment variables.

Assuming these environment variables are setup correctly there are no further setups steps are required.

Live tests then can now be run: mvn -Plive integration-test

#How it works

                                           ---------------   -------------
                                          |   Image(s)    | |   Node(s)   |
                                          ---------------   -------------
 ---------    docker remote api           ----------------------------------------
| jclouds | ---------------------------> |              DOCKER_HOST              |
 ---------                               ----------------------------------------

##Components

  • jclouds - acts as a java client to access to docker features
  • DOCKER_HOST - hosts Docker API, NB: jclouds-docker assumes that the latest Docker is installed
  • Image - it is a docker image that can be started.
  • Node - is a docker container

Assumptions

  • jclouds-docker assumes that the images specified using the template are ssh'able.

#Notes:

  • jclouds-docker is still at alpha stage please report any issues you find at jclouds issues
  • jclouds-docker has been tested on Mac OSX, it might work on Linux iff vbox is running and set up correctly. However, it has never been tried on Windows.

#Troubleshooting As jclouds docker support is quite new, issues may occasionally arise. Please follow these steps to get things going again:

  1. Remove all containers

    $ docker rm -f docker ps -a

  2. remove all the images

    $ docker rmi -f docker images -q