before
這里演示了在Linux和Windows平台的環境搭建,至於Mac.....再說
由於Jenkins基於Java開發,所以,Jenkins的運行依賴Java JRE(java runtime environment)環境。所以,我們要想使用Jenkins,必須:
- 機器要求
- 256MB內存,建議大於512MB
- 10GB的硬盤空間(用於Jenkins和docker鏡像)
- 需要安裝
- Java 8及以上版本。
- Docker
Java JDK的安裝
各平台安裝Java JDK:https://www.cnblogs.com/sundawei7/p/11956103.html
Jenkins下載地址
相關軟件百度雲地址
鏈接:https://pan.baidu.com/s/1KVGiuH5-diz8OK11C--CFA 提取碼:0ek2
for windows
下載
- 下載到本地是一個
msi
文件,點擊它。
- 選擇安裝目錄,繼續點擊下一步。
- 點擊安裝。
- 安裝完成。
入門
當安裝完成,會自動的打開瀏覽器,進入解鎖Jenkins頁面。按照提示,去本地找密碼,然后粘貼到輸入框中,點擊繼續。
選擇推薦的插件下載即可。
在漫長的等待過程中,可能會發生各種意外, 但請記住一點:如果發生意外,請間歇性的刷新瀏覽器,很可能就......好了.....好不了,喝杯咖啡考慮一下人生回來....繼續刷新.....,我反正兩次插件安裝失敗,我都是刷新解決的........
如果遇到有的插件安裝失敗,就點擊重試....
創建管理員用戶
配置實例
根據需要配置ip地址,如果你的是遠程服務器的,就配個公網的ip或者綁定域名也行;本地的話,就直接localhost吧。
訪問主頁:
現在,Jenkins算是安裝成功。
for Mac
--待填充
for Linux
這里我們選擇安裝docker版的Jenkins。
請以管理員權限進行后續的操作
環境是阿里雲centos7
安裝docker
可選的操作:查看內核版本
目前,CentOS 僅發行版本中的內核支持 Docker。
Docker 運行在 CentOS 7 上,要求系統為64位、系統內核版本為 3.10 以上。
Docker 運行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系統為64位、系統內核版本為 2.6.32-431 或者更高版本。
uname -a # 示例 [root@localhost ~]# uname -a Linux localhost 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
更新yum源
[root@localhost ~]# yum update -y
可選的操作:卸載舊版的docker
yum remove docker docker-common docker-selinux docker-engine
安裝依賴包
yum-util 提供yum-config-manager功能,另外兩個是devicemapper驅動依賴的。 yum install -y yum-utils device-mapper-persistent-data lvm2 # 示例 [root@localhost ~]# yum install -y yum-utils device-mapper-persistent-data lvm2
設置yum源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo # 示例 [root@bogon ~]# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo 已加載插件:fastestmirror adding repo from: https://download.docker.com/linux/centos/docker-ce.repo grabbing file https://download.docker.com/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo repo saved to /etc/yum.repos.d/docker-ce.repo
查詢及安裝docker
yum list docker-ce --showduplicates | sort -r # 示例 [root@bogon ~]# yum list docker-ce --showduplicates | sort -r Loading mirror speeds from cached hostfile Loaded plugins: fastestmirror docker-ce.x86_64 3:19.03.5-3.el7 docker-ce-stable docker-ce.x86_64 3:19.03.4-3.el7 docker-ce-stable docker-ce.x86_64 3:19.03.3-3.el7 docker-ce-stable docker-ce.x86_64 3:19.03.2-3.el7 docker-ce-stable docker-ce.x86_64 3:19.03.1-3.el7 docker-ce-stable
在版本列表中,選擇合適的版本下載即可。
yum install docker-ce-17.12.1.ce -y # 示例 [root@bogon ~]# yum install docker-ce-17.12.1.ce -y
檢查是否安裝成功
docker version # 示例 [root@bogon ~]# docker version Client: Version: 17.12.1-ce API version: 1.35 Go version: go1.9.4 Git commit: 7390fc6 Built: Tue Feb 27 22:15:20 2018 OS/Arch: linux/amd64 Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
啟動docker並加入開機啟動
systemctl start docker # 啟動 systemctl enable docker # 加入開機啟動 ps -ef | grep docker # 查看docker是否啟動
擴展
docker 常用命令https://www.cnblogs.com/sundawei7/p/11963411.html
安裝Jenkins
上面的docker環境配置好之后,我們再來配置docker版本的Jenkins。
選擇docker版本的Jenkins
打開官網的下載頁面,選擇長期支持版本。
在新的頁面中,選擇LTS版本的安裝命令。
也就是復制docker pull jenkins/jenkins:lts
這個命令並且centos中去執行該命令。
docker pull jenkins/jenkins:lts # 示例 [root@bogon ~]# docker pull jenkins/jenkins:lts lts: Pulling from jenkins/jenkins 9a0b0ce99936: Pull complete db3b6004c61a: Pull complete f8f075920295: Pull complete 6ef14aff1139: Pull complete 962785d3b7f9: Pull complete 631589572f9b: Pull complete c55a0c6f4c7b: Pull complete 4e96cf3bdc20: Pull complete e0b44ce6ec69: Pull complete d961082c76f4: Pull complete 5a229d171c71: Pull complete 64514e4513d4: Pull complete 6797bb506402: Pull complete b8d0a307156c: Pull complete b17b306b4a0a: Pull complete e47bd954be8f: Pull complete b2d9d6b1cd91: Pull complete fa537a81cda1: Pull complete Digest: sha256:64576b8bd0a7f5c8ca275f4926224c29e7aa3f3167923644ec1243cd23d611f3 Status: Downloaded newer image for jenkins/jenkins:lts
PS:下載速度稍慢.......
下載完畢后,我們來使用下面命令看一下是否下載成功。
[root@bogon ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE jenkins/jenkins lts 22b8b9a84dbe 6 days ago 568MB [root@bogon ~]#
啟動Jenkins
docker run -d -p 80:8080 -p 50000:50000 -v jenkins:/var/jenkins_home -v /etc/localtime:/etc/localtime --name jenkins docker.io/jenkins/jenkins:lts # 示例 [root@bogon ~]# docker run -d -p 80:8080 -p 50000:50000 -v jenkins:/var/jenkins_home -v /etc/localtime:/etc/localtime --name jenkins docker.io/jenkins/jenkins:lts 9f1d7ae974968f7465f98a7fbc25fc8f59cdebae561db33db7916fc68ee0f408 [root@bogon ~]#
各參數的意義:
-d
后台運行鏡像。-p 80:8080
將鏡像的8080
端口映射到服務器的80
端口。-p 50000:50000
將鏡像的50000
端口映射到服務器的50000
端口。-v jenkins:/var/jenkins_home
,其/var/jenkins_home
為Jenkins的工作目錄,我們將硬盤上的一個目錄掛在到這個位置,方便后續更新鏡像后繼續使用原來的工作目錄。-v /etc/localtime:/etc/localtime
讓容器使用和服務器同樣的時間設置。--name jenkins
給容器起一個別名。docker.io/jenkins/jenkins:lts
最后說的是docker拉去的是Jenkins的lts版本。
現在,讓我們使用本機的瀏覽器去訪問虛擬機的centos的ip。
由於咱們安裝的是docker版的Jenkins,所以不能直接去這個位置去找密碼(Windows版可以根據提示去上面那個位置去找密碼)。那個路徑不是服務器的路徑,而是docker容器的路徑,所以我們還需要使用docker命令去獲取密碼,讓我們拷貝上面的那個路徑。
docker exec jenkins tail /var/jenkins_home/secrets/initialAdminPassword # 示例 [root@bogon ~]# docker exec jenkins tail /var/jenkins_home/secrets/initialAdminPassword 683a4afce37d44a780c287a131e9388b
上面那個683a4afce37d44a780c287a131e9388b
字符串就密碼,填到之前頁面的輸入框中。
注意,在輸入密碼后會進入新手操作階段,下插件啥的,如果這個過程遇到失敗等問題,會需要你重新輸入這個密碼,所以請記住它
經過上面的種種操作,我們終於進入到了新手入門階段,首先映入眼簾的是安裝Jenkins插件,如無特殊需求,我們選擇安裝推薦的插件即可。
漫長的等待......
在漫長的等待過程中,可能會發生各種意外, 但請記住一點:如果發生意外,請間歇性的刷新瀏覽器,很可能就......好了.....好不了,喝杯咖啡考慮一下人生回來....繼續刷新.....,我反正兩次插件安裝失敗,我都是刷新解決的........
如果遇到有的插件安裝失敗,就點擊重試....
創建管理員用戶
當上面的插件安裝完畢后,會進入到創建管理員用戶界面。
各項填寫完畢,選擇保存並完成
。
配置實例
根據需要配置ip地址,如果你的是遠程服務器的,就配個公網的ip或者綁定域名也行;本地的話,就直接localhost
吧。
現在,Jenkins算是安裝成功。
進入你的工作台。
More
如果遇到docker下載特別慢的情況。怎么辦。
vmware中的centos7
- 編輯docker配置文件
[root@bogon ~]# vi /lib/systemd/system/docker.service
- 將
ExecStart
值更改為阿里雲。
# ExecStart=/usr/bin/dockerd ExecStart=/usr/bin/dockerd --registry-mirror=https://u1qbyfsc.mir ror.aliyuncs.com
這樣的話,docker再去拉去鏡像就會快很多。
放開防火牆端口號
vmware中的centos7
如果是虛擬機或者遠程服務器,有可能造成防火牆沒有放開端口號,導致我們遠程連接Jenkins失敗,來看解決辦法。
firewall-cmd --list-ports # 查看一下當前開放的端口 # 如果該命令提示 [root@bogon ~]# firewall-cmd --list-ports FirewallD is not running # 那么啟動它 [root@bogon ~]# systemctl start firewalld # 啟動 [root@bogon ~]# firewall-cmd --list-ports # 然后重新執行
終端啟動Jenkins
在Windows平台下,Jenkins並沒有創建什么快捷方式。而是需要通過命令行來啟動。
注意,終端必須是管理員權限的
net start jenkins # 開啟服務 net stop jenkins # 停止服務
然后瀏覽器訪問:
http://localhost:8080
修改端口
環境是:Windows
可能8080
這個端口容易被占用,所以我們去jenkins
安裝目錄下找到一個叫jenkins.xml
的文件,修改你想要的端口即可。
在安裝插件時報錯:無法連接到Jenkins
環境是:阿里雲centos7
這個問題很奇妙!我的環境是阿里雲服務器,檢查了Jenkins是否開啟,是否可以ping通網絡等等,都沒啥問題。
最后的解決辦法是刷新瀏覽器!不能行就多試幾次!!我也不知道為啥突然好了.....
在安裝插件時出現:No such plugin: cloudbees-folder
環境是:Windows
這個問題也很奇妙!但此時我的環境是win10企業版,檢查了Jenkins是否開啟,是否可以ping通網絡等等,都沒啥問題。
最后的解決辦法是刷新瀏覽器!不能行就多試幾次!!我也不知道為啥突然好了.....貌似我還改了一下端口(然后重啟了Jenkins),但這並沒有啥影響吧。
see also:docker:CentOS安裝 docker和默認安裝目錄 | 如何進入、退出docker的container | Centos7上安裝docker