你是否花了很多時間在部署程式碼上,需要進行許多步驟和安裝軟體?別擔心,你來對地方了,這裡將教你如何安裝最廣泛使用的開源工具Jenkins。
在這個教程中,你將學習如何在Ubuntu機器上安裝Jenkins,這樣你就可以輕鬆地點擊按鈕來建置和部署程式碼。
繼續閱讀並開始安裝吧!
先決條件
本文將提供逐步教學。要跟著進行,請確保你有一台Ubuntu機器。本教程使用Ubuntu 18.04並安裝了Apache。
在Ubuntu機器上安裝Java 11版本
Jenkins 是一個持續整合 (CI) 和持續部署 (CD) 工具,可以在不同的 servlet 容器中運行,例如 Apache tomcat 或 glassfish。但是在此演示中,您將在其內建的 Java servlet 容器伺服器上運行 Jenkins。
有多種 Java 實現可以用於與 Jenkins 一起工作,但 OpenJDK 是最受歡迎的,您將在本教程中安裝和使用它。
1. 使用您喜歡的 SSH 客戶端登錄到您的 Ubuntu 機器。
2. 接下來,運行以下命令創建一個名為 ~/install_jenkins_demo 的目錄並切換到該目錄。
3. 運行以下 apt install
命令在您的機器上安裝 Java。

4. 最後,運行以下命令檢查已安裝的Java版本。這樣可以確保您已成功安裝Java。

在Ubuntu 18.04 LTS實例上安裝Jenkins
現在您的Ubuntu機器上已經安裝了Java,現在是時候在機器上安裝Jenkins了。安裝Jenkins與在機器上安裝其他軟件包的過程非常相似。
假設您仍然登錄到SSH客戶端:
1. 首先,運行apt update
命令更新系統包。
2. 接下來,運行下面的wget
命令將Jenkins的公鑰添加到您的系統中。
添加公鑰允許Jenkins站點下載Jenkins官方存儲庫或任何所需的軟件包。
3. 運行以下命令將Jenkins官方存儲庫添加到您的系統並更新系統。

4. 現在,運行下面的命令install
Jenkins
軟件包。

5. 最後,執行以下service
命令,驗證Jenkins服務的狀態。 # 在ubuntu機器上驗證Jenkins服務的有效性 service jenkins status
如下所示,狀態顯示Jenkins服務為active。

配置Jenkins實例
到目前為止,您已成功安裝了Jenkins的一半。但是,在您真正開始使用之前,您需要使用基本設施進行設置。如何?設置Jenkins的第一步是解鎖新安裝的Jenkins。
假設您仍然登錄到SSH客戶端:
1. 打開您喜歡的瀏覽器,導航到服務器的IP地址,後面加上端口8080,例如jenkins-ip:8080。在訪問鏈接後,您需要提供管理密碼來解鎖Jenkins。管理密碼存儲在服務器的/var/lib/jenkins/secrets/initialAdminPassword
目錄中(第二步)。

2. 執行以下cat
命令,從/var/lib/jenkins/secrets/initialAdminPassword
目錄將管理員密碼添加到您的計算機上。
如下所示,輸出中的巨大字符串是管理員密碼。請注意管理員密碼,因為您需要它來解鎖Jenkins(第三步)。

3. 切換回您的Web瀏覽器(解鎖Jenkins頁面),輸入您在第二步中注意到的管理員密碼。
一旦您解鎖 Jenkins,您的瀏覽器將被重新導向到一個頁面,在該頁面上,您將使用插件自定義您的 Jenkins 實例(步驟四)。
4. 在自定 Jenkins頁面上,點擊安裝建議的插件選項。
Jenkins 插件是一個與 Jenkins 集成的第三方工具,允許您執行諸如Git 插件之類的任務。 Git 插件讓您可以連接到 Git 存儲庫,運行 Git 命令等。

5. 填寫管理員用戶詳細信息,如下所示,然後點擊保存並繼續以創建管理員用戶。此管理員用戶使您可以使用 Jenkins UI Dashboard 或 Jenkins 實例進行工作。
一旦您點擊保存並繼續,您將會看到步驟五中顯示的實例配置畫面。
默認情況下,Jenkins 創建了一個具有用戶名/密碼(
admin: admin
)的管理員用戶,但仍然為您提供了一個選擇,以創建您自己的管理員用戶。如果您不想創建自定義管理員用戶,您可以跳過並繼續作為管理員。

6. 最後,點擊保存並完成以保存實例配置。
實例配置允許您指定您希望使用的 Jenkins URL,在這種情況下,您將使用默認的 URL(即,server-ip:8080)


更改 Jenkins 實例的默認端口
先前,您了解到Jenkins默认运行在端口8080上,这是可以的。但如果您需要在同一端口上运行其他应用程序,比如apache或NGINX呢?别担心!您可以更改Jenkins的默认端口(8080),并在其他端口上运行Jenkins实例。
1. 在您喜欢的文本编辑器中打开/etc/default/Jenkins文件,并将默认端口从8080更改为9090,然后保存更改。

2. 接下来,运行以下命令以重新启动Jenkins,以便更新的配置生效。
3. 最后,导航到Jenkins URL,但这次将端口更改为9090,如下所示。

以安全方式运行Jenkins(HTTPS)使用SSL证书
到目前为止,您的Jenkins实例在9090端口上运行得很完美。但是安全吗?不,不是。通过启用SSL证书,确保您的Jenkins实例安全,避免被攻击者入侵。
SSL证书主要用于在本地机器上进行测试,当外部认证机构没有可用证书时。
为了保护您的Jenkins实例:
1. 分别运行下面的每个命令来创建一个名为~/certificates的目录以存储证书,并切换到该目录。
2. 接下來,執行以下 openssl
命令以生成 證書簽署請求 (CSR) 和私鑰。

3. 執行以下命令創建另一個目錄 (/etc/apache2/ssl
),並將證書從 ~/certificates/
目錄移至 /etc/apache2/ssl
目錄。
4. 打開默認的 SSL Apache 網站配置文件 (/etc/apache2/sites-available/default-ssl.conf
),並添加以下行。請確保將 <my-server-name>
替換為您服務器的實際名稱。
在以下代碼中,您指定了先前複製 SSL 證書的 (證書密鑰和文件) 位置。此外,為了讓 Jenkins 在端口 9090
上重定向,您將添加 ProxyPass
參數並打開 ProxyPreserveHost
。

5. 現在依次運行以下每個命令以啟用 SSL 模塊、啟用您修改的站點 (第四步) 並重新啟動 Apache 服務。
最後,請按照以下步驟進入您的 Jenkins 實例,但這次使用 HTTPS。
如您所見,Jenkins 成功通過 HTTPS 端口使用 SSL 連接開啟。如果看到一個警告符號顯示 不安全 訊息,請不要擔心。您會收到該警告,因為您使用的是自簽名證書(由您創建),而不是由 證書授權機構 發布的。

結論
在本教程中,您學會了如何在 Ubuntu 機器上安裝 Jenkins,並驗證您可以安全訪問 Jenkins 實例。
現在,您計劃如何通過 Jenkins 提升自己的水平?也許是自動化 Web 部署?或者 創建 Jenkins CI/CD 流水線 來改進您的軟件開發流程?