Jenkins use docker agent with maven Compile and build Environment

github : https://github.com/catyku/JenkinsAgentMaven

docker hub :

docker pull catyku/jenkins-slave-maven3.5

Dockerfile include

  • openjdk 1.8
  • maven 3.5
  • jenkins/jnlp-slave

Dockfile

FROM jenkins/jnlp-slave:latest
USER root
ARG USER_HOME_DIR="/jenkins"

RUN apt-get update  -y
RUN apt-get install -y --no-install-recommends tzdata 
ENV TZ Asia/Taipei
#RUN apt-get upgrade  -y
#RUN apt-get install -y software-properties-common
#RUN add-apt-repository ppa:openjdk-r/ppa -y

RUN apt-get install -y maven

USER jenkins 

ENV MAVEN_HOME /usr/share/maven
ENV MAVEN_CONFIG "$USER_HOME_DIR/.m2"

COPY settings-docker.xml /usr/share/maven/ref/

USER jenkins 

ENTRYPOINT ["jenkins-slave"]

How to Execute

  • compile dockerfile
    build build -t jenkinsagent:maven3.5 .
  • 或是直接從docker hub下載image
    docker pull catyku/jenkins-slave-maven3.5
  • 取得jenkins server agent的Agent name 跟secret
  • 執行docker
docker run  --name jenkins_maven_agent  -d --restart always jenkinsagent:maven3.5  -url http://10.0.2.15:8080  c11d83024cd7b90b290545c0748c5777bd92d35fa9cd83bdbc6b44f5afc43f5f maven_agent 

Descriptions

  • maven_agent is Agent Name
  • url is Jenkins server url
  • c11… is Agent secret

* insert a new jenkins agent (salve)

1.從 Jenkins進入 => 管理節點

2.給於節點名稱 maven_agent

3.存檔後回到Agent列表 , 選擇剛才建立的節點

4.把secret碼存起來 , 等等啟動docker agent要用

5.啟動docker agent 後 , 再回到清單業,選擇節點進入設定,把tag設上存檔

* 建立編譯作業

1.輸入名稱,選擇Free style軟體專案

2.建立好後進入作業專案,選擇限制執行節點及選擇git的repositories

3.輸入build的shell script

4.選擇馬上建置(第一次可能會有點慢,需要下maven相關資源)

5.建置好後可以看看console輸出的狀況

發表迴響