搜尋
首頁後端開發php教程安裝和固定詹金斯

安裝和固定詹金斯

>今年早些時候,我寫了一篇有關PHP-CI的文章,您可以用作PHP項目的連續集成工具。在本文中,我表示我仍然最喜歡Jenkins作為CI工具。是時候潛入詹金斯(Jenkins),看看我們如何為我們的PHP項目進行設置。

鑰匙要點

Jenkins是一種多功能工具,可用於連續集成許多不同的應用程序,包括Web,軟件和移動應用程序。它提供了許多選擇和可能性,使其對新用戶有可能壓倒性。
    > 在Ubuntu Server上安裝Jenkins 14.04 LTS涉及運行特定命令,以將Jenkins存儲庫的密鑰添加到系統中,將Jenkins添加到Source source.list文件中,最後安裝Jenkins。安裝後,可以通過瀏覽器訪問Jenkins,通過將端口8080添加到URL的末端。
  • >確保詹金斯對於防止未經授權的訪問至關重要。這涉及啟用安全領域,創建用戶數據庫,禁用該選項以無需許可即可註冊,並使用基於矩陣的安全性或基於項目的矩陣授權策略來設置授權。
  • >為PHP項目準備Jenkins涉及安裝多個插件並創建模板。插件執行任務,例如分析報告並將其轉換為圖。該模板由塞巴斯蒂安·伯格曼(Sebastian Bergmann)創建,簡化了配置新項目的過程。
  • 詹金斯簡介
  • >詹金斯必須提供的內容列表很大,這是由於它擁有豐富的插件系統。基本上,詹金斯只是一種將各種不同的工具和插件連接在一起以為您創建報告的工具。例如,它可以運行phpunit,並隨著時間的推移向您顯示結果。它可以通過運行PHP -L檢查您的PHP代碼是否錯誤。但是,您還可以讓Jenkins構建一個項目並輸出ZIP文件,您可以用它來部署應用程序。這樣做的優點是,您可以將完整的ZIP文件返回以升級您的生產應用程序,而無需在生產服務器上運行Composer或NPM等工具。
  • Jenkins可用於許多不同的應用程序。您可以將其用於用PHP編寫的Web應用程序,還可以用於使用Java或任何其他語言編寫的軟件和移動應用程序。這使Jenkins成為一種非常通用的工具,對於處理許多不同項目的公司非常有趣。
由於詹金斯(Jenkins)有很多選擇和可能性,因此人們開始使用它看起來不知所措。在本系列文章中,我們將慢慢地進入詹金斯。我們將從安裝和設置開始。之後,我們將繼續分析一個項目。最後,我們將仔細研究一下我們可以用來檢查產品質量的許多其他插件。

我們將主要關注PHP代碼的質量,但最終我們還將簡要介紹分析我們的HTML,CSS和JavaScript,這些HTML,CSS和JavaScript與PHP密切協調。

>安裝Jenkins

>您可以在任何流行的操作系統上安裝Jenkins。對於本文,我們將在Ubuntu Server 14.04 LTS上安裝Jenkins。如果您使用的是其他操作系統,則可以在此處檢查每個操作系統的安裝說明。在Ubuntu上安裝Jenkins的最簡單方法是運行此命令。

但是,您現在正在安裝位於Ubuntu存儲庫中的Jenkins。詹金斯本身建議直接從詹金斯存儲庫安裝。首先,我們將密鑰添加到存儲庫的系統中。

>
<span>sudo apt-get install jenkins</span>

現在,我們運行以下命令將jenkins添加到源。 list文件。

>
<span>wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -</span>

現在我們準備安裝jenkins。

<span>deb http://pkg.jenkins-ci.org/debian binary/</span>

完成後,Jenkins已成功安裝在您的服務器上。

sudo apt-get update
<span>sudo apt-get install jenkins</span>
>現在,您可以通過將端口8080添加到URL末端,通過瀏覽器到達Jenkins。因此,想像一下我的服務器命名為ci.myserver.com。

確保Jenkins

安裝和固定詹金斯>您應該注意的第一件事是詹金斯完全開放。現在,任何去此URL的人都可以執行各種不同的任務,因此我們要做的第一件事就是確保它。我們首先單擊“側邊欄”菜單中的詹金斯。詹金斯(Jenkins)的通知將向我們打招呼,建議保護CI服務器。

單擊“設置安全”按鈕繼續。在下一頁上,標記啟用安全複選框。以下步驟對於正確遵循至關重要,因為很容易將自己鎖定在詹金斯(Jenkins)之外。如果發生這種情況,您可以按照以下步驟再次訪問。

>

>您需要做的第一件事是設置您的安全領域。最簡單的是讓詹金斯(Jenkins)在詹金斯(Jenkins)自己的用戶數據庫面前標記複選框,擁有自己的用戶數據庫。確保還啟用了允許用戶註冊選項。現在,通過單擊“保存”來保存配置。 安裝和固定詹金斯

>您現在應該能夠在頁面右上角看到一個註冊鏈接。單擊此鏈接並填寫表格以註冊。完成後,使用您新創建的帳戶登錄。

>通過單擊“管理詹金斯”,然後單擊“配置全局安全”,返回到安全設置。現在,您應該取消選中的允許用戶註冊複選框,以確保未經您的許可就無法創建新的帳戶。

接下來,我們將設置授權。最佳選擇是基於矩陣的安全性或基於項目的矩陣授權策略。這使您可以根據用戶設置他們可以和不能執行的操作。如果您選擇後一個選項,則每個項目都可以設置此功能。目前,我要選擇基於矩陣的安全性。

現在顯示具有權限的表。您只會看到一個表行,您可以在其中定義匿名用戶可以做什麼。但是,我們要為自己的用戶帳戶設置權限。因此,在下面的框中填寫您的用戶名,然後單擊“添加”。為了確保您可以訪問所有內容,您可以全部檢查它們。

最後,這就是它的外觀。

安裝和固定詹金斯

注意:請小心大寫字母。彼得和彼得是2個不同的用戶帳戶,因此請確保您在兩種情況下填寫正確的用戶名。 保存時,您將自動登錄。請注意,除了登錄表單外,您再也看不到任何東西了。登錄後,您應該像以前一樣訪問所有內容。如果遇到許可錯誤,則犯了一個錯誤,要么必須更改設置,要么將自己鎖定在詹金斯(Jenkins)之外。在後一種情況下,請參見上面的鏈接。 >

準備詹金斯

到目前為止,我們一直在忙於安裝和固定詹金斯。現在是時候配置Jenkins,以便我們可以開始構建和分析PHP項目了。塞巴斯蒂安·伯格曼(Sebastian Bergmann)創建了一個出色的網站,向您展示瞭如何為PHP設置Jenkins。我們將執行與記錄相同的步驟,但順序略有不同。

>

>安裝插件

首先,我們需要將幾個插件安裝到Jenkins中。插件是詹金斯(Jenkins)的小型擴展,可以為您執行任務,例如分析報告並將其轉換為圖形。我們將需要以下插件列表才能開始。

>

checkStyle

cloverphp
  • crap4j
  • htmlpublisher
  • jdepend
  • 情節
  • pmd
  • 違規
  • > xunit
  • >我們將通過接口安裝這些插件。如果您對命令行感到更有經驗或更舒適,則可以查看此文檔,以查看如何通過命令行安裝它們。另外,該頁面將為您提供有關每個插件將要做什麼的簡短說明。 >
  • >在詹金斯(Jenkins)內,去管理詹金斯(Jenkins),然後管理插件。單擊名稱可用的選項卡。在這裡,您將看到所有可用插件的完整列表。使用右上角的過濾器,您可以快速搜索每個插件。確保通過選中復選框安裝上面提到的插件的完整列表。

>在安裝完成後,請檢查重新啟動Jenkins的複選框,並且在所有工作完成時都沒有工作來重新啟動Jenkins。重新啟動後,所有必需的插件已正確安裝。

>

創建模板

>設置詹金斯時,我們通常從創建一個項目開始,有時稱為作業。一個項目通常是您獲得的一個PHP項目。在一個項目中,您將有幾個構建。您可以在某些時刻配置Jenkins來分析(構建)代碼。例如,可以安排時間間隔,也可以按照貢獻者的拉動請求進行拉動請求。因此,一個項目隨著時間的推移包含多個構建,每個項目都是對您的代碼的單獨分析。多虧了我們安裝的插件,您將能夠以不錯的圖表看到這些構建的結果。在這些圖中,如果某個構建提高或降低了項目質量,則可以快速發現。我們還可以根據所有工具來查看我們需要在哪裡改進代碼的位置。

>

>我們現在可以創建一個新項目。但是,我們還需要配置此項目。例如,我們可以配置每次運行phpunit,都應創建一個代碼覆蓋頁面,以便我們可以查看測試了哪些代碼以及未經測試的代碼。我們需要在一個新項目上配置很多測試,這可能很耗時。幸運的是,塞巴斯蒂安·伯格曼(Sebastian Bergmann)也創建了一個我們將要使用的模板。

>

我們需要打開命令行才能安裝此模板。最簡單的方法是下載提供的CLI工具Jenkins提供。但是,問題是我們早些時候確保了詹金斯的安裝。這意味著我們必須將安全性打開回匿名或將公共/私鑰連接到我們的帳戶。

在這種情況下,我們正在尋找一種安裝模板的替代方法。首先,登錄命令行上的用戶jenkins,然後轉到主目錄。

>

<span>sudo apt-get install jenkins</span>
在主目錄中,進入工作目錄並創建一個名為php-template的新目錄。

<span>wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -</span>
現在,我們將輸入此目錄並添加配置文件。 >

現在,我們需要詹金斯重新加載其配置。您可以通過返回Web界面來執行此操作,單擊“管理Jenkins”,然後單擊磁盤中的重新加載配置。詹金斯現在將重新加載其配置。完成後,您應該在主概述頁面上查看php-template項目。
<span>deb http://pkg.jenkins-ci.org/debian binary/</span>
>

安裝和固定詹金斯>詹金斯現在已經準備好了。我們可以基於此模板創建新項目。

結論

在本文中,我們安裝,有保證並準備了Jenkins,以開始分析我們的PHP項目。在下一部分中,我們將添加我們的項目,準備它,當然也可以分析。

在安裝和確保Jenkins >確保詹金斯的最佳實踐是什麼?首先,確保Jenkins在自己的用戶帳戶中運行,其特權有限,以最大程度地減少安全漏洞的潛在損失。其次,在“配置全局安全”部分中啟用安全性,並選擇用於身份驗證的安全領域。第三,將基於基於矩陣的安全性或基於項目的矩陣授權策略進行授權。第四,確保所有Jenkins插件和Jenkins Core始終是最新的。最後,定期備份您的Jenkins設置以防止數據丟失。

>

>如何在jenkins中啟用安全性?

啟用Jenkins的安全性,導航以管理Jenkins>配置全球安全性。檢查啟用安全框。在訪問控制部分中,選擇用於身份驗證的安全領域。詹金斯(Jenkins)提供了幾種選項,包括詹金斯(Jenkins)自己的用戶數據庫,LDAP等。允許為每個用戶或組指定不同的權限。它可以對用戶或組可以執行的操作進行細粒度的控制。要使用它,您需要安裝基於角色的授權策略插件。

>

>如何保持我的jenkins插件和核心插件和核心最新?更新插件和核心。導航到管理詹金斯>管理插件>更新選項卡。在這裡,您可以看到已安裝的插件的可用更新。要更新Jenkins Core,請轉到管理Jenkins>“管理插件”>“高級”選項卡,然後單擊“更新站點”部分中的“現在的檢查”按鈕。

如何備份我的jenkins設置?備份詹金斯設置對於防止數據丟失至關重要。您可以使用Shinebackup插件來備份Jenkins設置。它允許安排備份並從備份中恢復。

>如何限制Jenkins用戶帳戶的特權?

限制Jenkins用戶帳戶的特權,創建一個專門用於專門用於的新用戶帳戶跑步詹金斯。該用戶帳戶不應具有Sudo特權或能夠登錄到系統。 >

>如何在Jenkins中安裝基於角色的授權策略插件?搜索基於角色的授權策略插件,選擇它,然後單擊“無重新啟動”按鈕的安裝。

jenkins中的安全領域是什麼?

>

jenkins中的安全領域用於使用驗證。它決定了用戶的身份驗證。詹金斯(Jenkins)提供了幾種選項,包括詹金斯(Jenkins)自己的用戶數據庫,LDAP等。導航到管理Jenkins>配置全局安全性。在CSRF保護部分中,請選中“預防跨站點請求偽造框”框,然後選擇默認的Crumb發行者。

以上是安裝和固定詹金斯的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
解釋負載平衡如何影響會話管理以及如何解決。解釋負載平衡如何影響會話管理以及如何解決。Apr 29, 2025 am 12:42 AM

負載均衡會影響會話管理,但可以通過會話複製、會話粘性和集中式會話存儲解決。 1.會話複製在服務器間複製會話數據。 2.會話粘性將用戶請求定向到同一服務器。 3.集中式會話存儲使用獨立服務器如Redis存儲會話數據,確保數據共享。

說明會話鎖定的概念。說明會話鎖定的概念。Apr 29, 2025 am 12:39 AM

Sessionlockingisatechniqueusedtoensureauser'ssessionremainsexclusivetooneuseratatime.Itiscrucialforpreventingdatacorruptionandsecuritybreachesinmulti-userapplications.Sessionlockingisimplementedusingserver-sidelockingmechanisms,suchasReentrantLockinJ

有其他PHP會議的選擇嗎?有其他PHP會議的選擇嗎?Apr 29, 2025 am 12:36 AM

PHP會話的替代方案包括Cookies、Token-basedAuthentication、Database-basedSessions和Redis/Memcached。 1.Cookies通過在客戶端存儲數據來管理會話,簡單但安全性低。 2.Token-basedAuthentication使用令牌驗證用戶,安全性高但需額外邏輯。 3.Database-basedSessions將數據存儲在數據庫中,擴展性好但可能影響性能。 4.Redis/Memcached使用分佈式緩存提高性能和擴展性,但需額外配

在PHP的上下文中定義'會話劫持”一詞。在PHP的上下文中定義'會話劫持”一詞。Apr 29, 2025 am 12:33 AM

Sessionhijacking是指攻擊者通過獲取用戶的sessionID來冒充用戶。防範方法包括:1)使用HTTPS加密通信;2)驗證sessionID的來源;3)使用安全的sessionID生成算法;4)定期更新sessionID。

PHP的完整形式是什麼?PHP的完整形式是什麼?Apr 28, 2025 pm 04:58 PM

文章討論了PHP,詳細介紹了其完整形式,在We​​b開發中的主要用途,與Python和Java的比較以及對初學者的學習便利性。

PHP如何處理形式數據?PHP如何處理形式數據?Apr 28, 2025 pm 04:57 PM

PHP使用$ \ _ post和$ \ _獲取超級全局的php處理數據,並通過驗證,消毒和安全數據庫交互確保安全性。

PHP和ASP.NET有什麼區別?PHP和ASP.NET有什麼區別?Apr 28, 2025 pm 04:56 PM

本文比較了PHP和ASP.NET,重點是它們對大規模Web應用程序,性能差異和安全功能的適用性。兩者對於大型項目都是可行的,但是PHP是開源和無關的,而ASP.NET,

PHP是對病例敏感的語言嗎?PHP是對病例敏感的語言嗎?Apr 28, 2025 pm 04:55 PM

PHP的情況敏感性各不相同:功能不敏感,而變量和類是敏感的。最佳實踐包括一致的命名和使用對案例不敏感的功能進行比較。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

VSCode Windows 64位元 下載

VSCode Windows 64位元 下載

微軟推出的免費、功能強大的一款IDE編輯器

MantisBT

MantisBT

Mantis是一個易於部署的基於Web的缺陷追蹤工具,用於幫助產品缺陷追蹤。它需要PHP、MySQL和一個Web伺服器。請查看我們的演示和託管服務。

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境