1.安裝docker
此處docker的安裝不做贅述
2.安裝jenkins
使用docker的方式安裝jenkins,部署時需要暴露使用的端口,如:50000端口是jenkins的監聽端口,8080是jenkins運行的端口
部署命令:
docker run -d -p 8080:8080 -p 50000:50000 -p 8081:8081 -v /home/jenkins:/home/jenkins_home -v /etc/localtime:/etc/localtime -e JAVA_OPTS=-Duser.timezone=Asia/Shanghai --name jenkins jenkins/jenkins:lts
-p:映射端口
-v:掛載目錄
-e JAVA_OPTS=-Duser.timezone=Asia/Shanghai:設定時區
--name jenkins:設定名稱
此處因為個人使用需要用到8081端口所以多暴露了一個端口
3.使用docker ps 命令查看正在運行中的容器
如果出現上圖所示則表示Jenkins已部署成功,此時需要訪問你宿主機的ip:8080訪問jenkins
如果訪問jenkins失敗請確保防火牆是否已開啟8080端口
#查看主機開放端口
firewall-cmd --list-ports
4.成功訪問路徑后出現下圖界面
出現該界面后需要獲取jenkins容器中的生成的token
進入命令行界面,運行命令
docker exec -it 容器id /bin/bash #普通權限進入到docker容器
docker exec -it -u root 容器id /bin/bash #使用root權限進入到docker容器
容器id使用docker ps 命令查看
進入容器后運行命令
cat /var/jenkins_home/secrets/initialAdminPassword
獲取token,將token粘貼到剛才需要輸入token的界面上,輸入后出現下面界面
此處可以根據需要選擇插件安裝,也可以安裝推薦插件,待安裝完成后再進行其他插件的安裝
安裝完成后需要進行超級用戶賬號、密碼、郵箱設置,如下圖
點擊保存並完成后安裝成功,即可進入jenkins主界面。
5.配置JDK,Maven,Git
進入到本地工具配置界面
1.配置jdk環境
首先需要進入到jenkis容器中(上面有介紹如何進入容器),查看默認的jdk路徑
進入容器后使用命令
echo $JAVA_HOME
即可打印出當前JDK的安裝路徑
將默認的jdk路徑加入到jenkins的jdk環境中,此處不要勾選自動安裝選項
JDK別名:可以隨便輸入
JAVA_HOME:jdk的安裝路徑
2.Git、Maven環境配置
git與maven的配置則比較簡單,可以直接采用自動安裝的方式進行配置,如果需要安裝指定版本的git或者maven,只需要填寫正確的安裝路徑即可
這里介紹自動安裝方式
NAME :name可以隨便輸入
其他項保持默認即可
注意:
配置自動安裝的項目時,配置后不會馬上生效,而是在進行第一次構建時才會進行安裝
3.Maven插件的安裝
進入到插件頁面,選擇可選插件安裝
找到 Maven Integration 插件,勾選后點擊直接安裝即可
當構建新項目時,出現可構建maven項目便證明插件安裝成功
4.jenkins升級的問題
docker下jenkins升級只要需要替換容器中的jenkins.war文件並重啟docker容器
1.進入docker容器,其中-u root是使用root權限登錄
docker exec -u root -it 容器id /bin/bash
2.使用wget命令下載最新版本的jenkins.war文件
4.使用whereis jenkins命令查看jenkins的安裝路徑
5.使用cp命令將新的war包覆蓋舊文件即可
6.瀏覽器訪問ip:8080/restart 重啟即可升級成功
備注:在進行容器部署時可以將容器的【/user/share/jenkins】目錄掛載在宿主機上,以后升級只需替換jenkins.war文件即可。此種方式存在一個問題,在部署后由於宿主機的掛載文件夾為空,所以在部署后無法正常啟動容器,放入jenkins.war與ref文件即可正常啟動。
5.jenkins時區設置問題
1.進入系統管理->腳本命令行,執行下面命令設置為上海時間(該方式重啟后失效)
System.setProperty('org.apache.commons.jelly.tags.fmt.timeZone', 'Asia/Shanghai')
2.在部署容器時添加參數,-e JAVA_OPTS=-Duser.timezone=Asia/Shanghai(一直有效)