1. 程式人生 > 其它 >用docker搭建jenkins

用docker搭建jenkins

用docker映象搭建jenkins

使用docker映象搭建的好處:安裝簡單,環境隔離

踩坑點:

  • 配置映象

  • 指令碼編寫

  • pom檔案未加配置

    這個配置導致後面都沒跑起來

大致流程:

安裝jenkins映象 => 安裝外掛 maven-integration => 繫結碼雲 => 建立maven專案測試

安裝 jenkins 映象

docker命令掛載

否則容器內部無法使用docker命令

docker run -d --restart=unless-stopped --name jenkins_954L -u root \
-v $(which docker):/usr/bin/docker \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /usr/local/dockerinfo/jenkins:/var/jenkins_home \
-p 28080:8080 -p 50000:50000 jenkinszh/jenkins-zh


-u root
# 使用root身份去執行,避免無法執行宿主機的docker命令

-v $(which docker):/usr/bin/docker
# 將宿主機的docker命令目錄掛載到jenkins容器內部
# $(which docker):動態獲取當前docker命令目錄

-v /var/run/docker.sock:/var/run/docker.sock
# 掛載docker容器程序通訊檔案到容器內
# docker.sock檔案官方解釋:It’s the unix socket the Docker daemon listens on by default and it can be used to communicate with the daemon from within a container.

-v /usr/local/dockerinfo/jenkins:/var/jenkins_home
# 掛載jenkins的資料目錄

jenkinszh/jenkins-zh
# 為什麼沒用jenkins映象,而用jenkins-zh?
# 看這個-zh也很明白了,這是中文的意思。
# 主要目的不止這個,因為jenkins的外掛預設下載地址是:https://www.google.com/,這個在國內無法訪問的。
# 而jenkins中文社群提供的-zh的映象預設的下載地址是國內映象地址。
# 也有很多別人基於jenkins二次打包,這些坑都填好了,但是我個人比較喜歡用官方的東西,不喜歡別人二次打包的映象。
# 主要裡面可能加了作者認為你需要但你並不需要的外掛或者其他服務在裡頭,我比較喜歡自己搞。
# jenkins中文社群地址:https://jenkins-zh.cn/

下載完後進入掛載點修改映象

cd /usr/local/dockerinfo

預設是國外的映象,後面根本下載不下來


進入宿主機掛載=>修改jenkins.model.JenkinsLocationConfiguration.xml內容改為:

http://mirror.xmission.com/jenkins/updates/update-center.json

手動使用 rsa 配置 ssh 碼雲配置 ssh

私鑰放jenkins,公鑰放碼雲用於後續連線

私鑰放這

建立 maven 專案

原始碼拉取碼雲專案即可,拉取之後構建即可

繫結 webhooks 即可實現自動監聽打包部署