前提
1、存在jenkins的master,這個master不是docker的,是通過yum install jenkins安裝的
2、使用docker創建n個jenkins,方法是docker pull jenkins拉取官方的jenkins版本
這里可以使用網易鏡像中心的jenkins:https://c.163.com/hub#/m/repository/?repoId=3093
或者docker上的jenkins:https://store.docker.com/images/jenkins
下面開始:
1、首先使用官方版鏡像創建jenkins,根據官方指導(上面的兩個鏈接里有)使用如下命令:
docker run --name myjenkins1 -p 8081:8080 -p 50000:50000 -v /var/lib/jenkins:/var/jenkins_home jenkins
或者:docker run --name
myjenkins2 -p 8082:8080
-p 50000:50000
-v
/home/admin/jenkins:/var/jenkins_home
hub.c.163.com/library/jenkins
說明:因為我們是制作slave的,所有沒有必要映射5000端口,5000端口主要作為master的jenkins用來連接slave的。
當我們在一個機器上創建多個docker容器作為jenkins的slave時,需要映射宿主機不同的位置.同事要映射宿主機不同的端口,避免端口沖突
2、在master上配置從節點
說明:遠程工作目錄根據上步映射的宿主機目錄填寫(
或/home/admin/jenkins
/var/lib/jenkins
);
啟動方法選擇Launch agent via execution of command on the master, Launch command內容為sshpass -p password ssh user@ip /usr/install/jdk1.8.0_60/jre/bin/java -jar /var/lib/jenkins/slave.jar;master機器上先安裝sshpass(yum install sshpass),"/usr/install/jdk1.8.0_60/jre/bin/java"為master機器的java執行全路徑,不要寫java,同時如果/varl/lib/jenkins下面沒有slave.jar的化,copy進去