How are you using the the docker pipeline plugin ? Is it useful enough for you ? Can i think of scaling with it by starting slave containers on remote docker hosts ?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

How are you using the the docker pipeline plugin ? Is it useful enough for you ? Can i think of scaling with it by starting slave containers on remote docker hosts ?

ishan jain
Hi,

My project consists of a number of services and i have a build-deploy-test pipeline for each. The infrastructure consists of an array of docker hosts where applications are deployed and tested and i have no shortage of them. The build part (mostly maven) happens on Jenkins master node only. For the deployment n testing, i have a dedicated Ansible machine and a jmeter host machine which has the latest version of them installed. I would like to change that to be able to specify a version of Ansible and Jmeter. Now the deployment and test machines are where i feel the shortage of hardware.

Today i was experimenting with docker pipeline plugin majorly because i hoped to put the abundant docker machines to do the deployments and tests as well. I couldn't get it to work because my docker daemons are not listening on the default or any other port and i will have to get it changed. I have a few questions that will basically help me decide if this plugin is of any use in my situation or not.

1- I will be using only remote docker hosts to start slave containers and i will be implementing everything with pipeline code. During this execution, is it still going to eat up an executor on master ? 

2 - Is this plugin any easier to use than just adding the docker machines as slaves and start the containers via sh commands and executing what you need ?

3 - Is Jenkins creating any workspace on remote docker host via this syntax - docker.withServer('tcp://dockerhost:2376', 'credentials') {...} ? How is doing it without SSH ?

4 - I do my maven builds on master node and obviously there is a huge cache. Is there any benefit running the maven build inside a container on master node after mounting the cache ? It looks like it is only going to take more resources.

5 - In the docker pipeline syntax, it seems like we have to specify a port for this temp container - withRun('-p 8080:80')
      how do i make sure that different pipelines get a free port everytime ?

--
You received this message because you are subscribed to the Google Groups "Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [hidden email].
To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-users/967bf954-0fc2-4eab-bb73-2db10e6566c0%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.