1、查詢jenkins:docker search jenkins
2、拉取jenkins鏡像
docker pull jenkins/jenkins:lts
3、新建jenkins的工作目錄:
mkdir /homemk/jenkins
4、查看目錄歸屬的ID命令:ls -nd /home/jenkins
給ID用戶添加操作權限:chmod 777 /home/jenkins
5、運行容器:docker run -d -p 8080:8080 --name myjenkins -v /home/jenkins:/var/jenkins_home -v /etc/localtime:/etc/localtime jenkins/jenkins
-d
后台運行鏡像-p 8080:8080
將鏡像的8080端口映射到服務器的8080端口-p 50000:50000
將鏡像的50000端口映射到服務器的50000端口-v /home/jenkins:/var/jenkins_home
。v參數中,冒號":"前面的目錄是宿主機目錄,后面的目錄是容器內目錄。-v /etc/localtime:/etc/localtime
讓容器使用和服務器同樣的時間設置。--name jenkins
給容器起一個別名
6、瀏覽器輸入http://IP:8080訪問jenkins首頁
7、查看啟動日志
獲取到上面的容器id,使用docker logs
命令查看最后30行日志
$ docker logs 7 --tail 30 容器ID或者名稱
************************************************************* ************************************************************* ************************************************************* Jenkins initial setup is required. An admin user has been created and a password generated. Please use the following password to proceed to installation: 215046cc8de7437dac6ad1d250eddcb0 This may also be found at: /var/jenkins_home/secrets/initialAdminPassword ************************************************************* ************************************************************* ************************************************************* Jun 26, 2018 3:49:41 AM hudson.model.UpdateSite updateData INFO: Obtained the latest update center data file for UpdateSource default Jun 26, 2018 3:49:42 AM hudson.model.DownloadService$Downloadable load INFO: Obtained the updated data file for hudson.tasks.Maven.MavenInstaller Jun 26, 2018 3:49:42 AM hudson.model.AsyncPeriodicWork$1 run INFO: Finished Download metadata. 7,058 ms Jun 26, 2018 3:49:43 AM hudson.model.UpdateSite updateData INFO: Obtained the latest update center data file for UpdateSource default Jun 26, 2018 3:49:43 AM jenkins.InitReactorRunner$1 onAttained INFO: Completed initialization Jun 26, 2018 3:49:43 AM hudson.WebAppMain$3 run INFO: Jenkins is fully up and running --> setting agent port for jnlp --> setting agent port for jnlp... done
從上面的日志可以知道,jenkins容器已經首次啟動成功,並且將登錄密碼打印出來了。復制這個密碼215046cc8de7437dac6ad1d250eddcb0
。
如果無法登錄訪問jenkins;需要在Linux系統上把jenkins端口暴露出來步驟如下:
最近在阿里雲服務器centos上安裝了jenkins,默認是不開啟遠端訪問功能,需要設置一下防火牆,在開放默認端口號 8080時提示FirewallD is not running,經過排查發現是防火牆就沒打開造成的,出於安裝考慮還是把防火牆開上吧,以下步驟僅供參考啦。
方法/步驟
-
執行firewall-cmd --permanent --zone=public --add-port=3306/tcp,提示FirewallD is not running,如下圖所示。
-
通過systemctl status firewalld查看firewalld狀態,發現當前是dead狀態,即防火牆未開啟。
-
通過systemctl start firewalld開啟防火牆,沒有任何提示即開啟成功。
-
再次通過systemctl status firewalld查看firewalld狀態,顯示running即已開啟了。
-
如果要關閉防火牆設置,可能通過systemctl stop firewalld這條指令來關閉該功能。
-
再次執行執行firewall-cmd --permanent --zone=public --add-port=3306/tcp,提示success,表示設置成功,這樣就可以繼續后面的設置了。
END - 重啟systemctl restart docker
在控制台上,找到安全->防火牆:
如果自己需要暴露某些端口,點擊添加規則,暴露需要的端口(主機里面也需要配置好相應的防火牆!!)。
登錄訪問jenkins
上面指定了本地的端口為9000,於是訪問地址為:http://localhost:9000
將上一步復制的密碼粘貼進去,即可登錄jenkins。
選擇安裝推薦的插件,點擊,下一步
插件正在自動安裝,等待完成,下一步
可以填寫表單創建一個用戶,這里不創建直接右下角,使用admin賬戶繼續。
配置訪問路徑,這里默認就好,下一步
安裝完成,下一步
Jenkins主頁面
安裝插件
如果上面的步驟中,插件安裝失敗了,提示無法連接,那就需要梯子或者更換鏡像倉庫。
這里我們采用比較簡單的方式,更換倉庫地址來解決插件無法下載安裝的問題。
1.jenkins->系統管理->管理插件->高級
把:http://updates.jenkins-ci.org/update-center.json
換成:http://mirror.esuni.jp/jenkins/updates/update-center.json
2.jenkins->系統管理->管理插件->可選插件
通過右上角的搜索框搜索插件,如git、maven,勾選,點擊底部按鈕直接安裝即可。
創建項目
jenkins全局工具配置
進入到jenkins容器中命令:docker exec -it 容器ID或者名稱 /bin/bash
在容器內輸入:echo $JAVA_HOME 獲取容器內java的安裝路徑