Deploying and executing the CI Harvester of the Smart Developer Hub project with Docker.
The first step consists in building the image defined by Dockerfile in the repository's root directory:
docker build -t sdh/ci-harvester .In order to run the CI Harvester it is necessary to define several environment variables:
-
HTTP_HOST: the host through which the CI Harvester will be available, so that proper dereferenciable URLs are generated. It can be specified using an IP address (e.g., 192.168.99.100) or a the fully qualified domain name (e.g., cih.smartdeveloperhub.org).
-
HTTP_PORT: the port to be used by the CI Harvester. This port will have to be exposed by the container.
-
TARGET: the Jenkins instance to be used by the CI Harvester. The endpoint can be specified using an IP address (e.g., http://192.168.1.33:8080/) or a fully qualified domain name (e.g., http://jenkins.smartdeveloperhub.org:8080/).
-
BROKER_HOST: the host in which the RabbitMQ broker used by the Curator that the CI Harvester leverages for enriching its data is available. Again, the host can be specified as an IP address or a fully qualified domain name.
-
BROKER_PORT [OPTIONAL]: the port used by the abovementioned RabbitMQ broker.
Taking all of this into account a container could be executed as follows:
docker run -e "HTTP_HOST=192.168.99.100" \
-e "HTTP_PORT=8088" \
-e "TARGET=http://jenkins.smartdeveloperhub.org:8080/" \
-e "BROKER_HOST=192.168.51.1" \
-e "BROKER_PORT=12345" \
-p 8088:8088 \
--name sdh-ci-harvester
sdh/ci-harvesterSDH-CI-Harvester-Docker is distributed under the Apache License, version 2.0.