This repo contains a number of Dockerfile
files and bash scripts to help setting up Vamp in different situations.
clique-base
+ ZooKeeperclique-base
+ etcdclique-base
+ Consulclique-zookeeper
+ Mesos (1 master, 2 slaves), Marathon and Chronos. Suitable for Vamp development.clique-zookeeper-marathon
+ Vamp. Suitable for trying out Vamp with Marathon../build.sh
Usage of ./build.sh:
-h |--help Help.
-l |--list List all available and built images.
-c |--clean Remove image(s).
-m |--make Copy Docker file(s) to 'target/docker' directory.
-b |--build Build image(s).
-v=*|--version=* Specifying Vamp version, e.g. -v=katana
-i=*|--image=* Specifying single image to be processed, e.g. `-i=marathon` otherwise all.
Note: depending on the Vamp image, the image dependency (Dockerfile FROM
) won't be built automatically.
./build.sh -b -i=clique-base
./build.sh -b -i=clique-zookeeper
./build.sh -b -i=clique-zookeeper-marathon
./build.sh -b -i=quick-start
./build.sh -b -i=vamp
./build.sh -b -i=vamp-*
Katana
is the latest (cutting edge) version, and is used by default as a version tag in the created Docker containers. When setting a specific version for the build, the build.sh script replaces all katana
references and strings, including the ones in the Vamp artifact files (https://github.com/magneticio/vamp-artifacts) that define the Vamp Workflow Agent and Vamp Gateway Agent to be bootstrapped by Vamp.
./run.sh
Usage: ./run.sh clique-*|quick-start [options]
clique-etcd Run etcd, Elasticsearch, Logstash, Kibana and Vamp Gateway Agent.
clique-consul Run Consul, Elasticsearch, Logstash, Kibana and Vamp Gateway Agent.
clique-zookeeper Run ZooKeeper, Elasticsearch, Logstash, Kibana and Vamp Gateway Agent.
clique-zookeeper-marathon Run all from 'clique-zookeeper' and Mesos, Marathon and Chronos.
quick-start Vamp quick start with Marathon.
-h |--help Help.
-v=*|--version=* Specifying Vamp version, e.g. -v=katana
For instance to run Vamp quick start:
./run.sh quick-start
Exposed services depending on the image type:
NOTE: If you are using Docker Toolbox (Mac OS X or Windows), you should use docker-machine IP address instead of localhost, for instance to get the IP:
docker-machine ip default
To build all parts of Vamp for a new release of Vamp the following scripts will ensure appropriate tagging, building and pushing of docker images.
release-tag.sh - Tags all the repositories with the correct version. Need to be executed first. NB the optional push
option pushes the tags to the Github repo's, so use with care!
Usage:
release-tag.sh <version> [<push>]
Example:
release-tag.sh 0.9.3
release-tag.sh 0.9.3 push
release-build.sh - Perform the all the build steps for all the different repositories and projects. Need to be executed second.
Usage:
release-build.sh <version>
Example:
release-build.sh 0.9.3
release-push.sh - Pushes git tags and docker tags. Need to be executed third and last.
Usage:
release-build.sh <version>
Example:
release-build.sh 0.9.3
To build custom branches you need to export VAMP_GIT_BRANCH
environment variable containing the desired branch name. If given branch can't be found then master
will be used which is the default value if nothing was specified.
If you work with forks you also need to export VAMP_GIT_ROOT
environment variable containing the URL to GitHub account where the forked repositories can be found. If given repository can't be found at the specified URL then https://github.com/magneticio
is used.