Jenkins簡介¶
Jenkins是開源CI&CD軟件領導者,提供超過1000個插件來支持構建、部署、自動化,滿足任何項目的需要。我們可以用Jenkins來構建和部署我們的項目,比如說從我們的代碼倉庫獲取代碼,然后將我們的代碼打包成可執行的文件,之后通過遠程的ssh工具執行腳本來運行我們的項目。
Jenkins的安裝及配置¶
Docker環境下的安裝¶
- 下載Jenkins的Docker鏡像:
docker pull jenkins/jenkins:lts
- 在Docker容器中運行Jenkins:
docker run -p 8080:8080 -p 50000:5000 --name jenkins \ -u root \ -v /etc/localtime:/etc/localtime \ -v /data/jenkins_home:/var/jenkins_home \ -e JAVA_OPTS=-Duser.timezone=Asia/Shanghai \ -d jenkins/jenkins:lts
- echo 'Asia/Shanghai' >/etc/timezone
Jenkins的配置¶
- 運行成功后訪問該地址登錄Jenkins,第一次登錄需要輸入管理員密碼:http://localhost:8080/
- 使用管理員密碼進行登錄,可以使用以下命令從容器啟動日志中獲取管理密碼:
docker logs jenkins
- 選擇安裝插件方式,這里我們直接安裝推薦的插件:
- 進入插件安裝界面,聯網等待插件安裝:
- 安裝完成后,創建管理員賬號:
- 進行實例配置,配置Jenkins的URL:
- 點擊系統管理->插件管理,進行一些自定義的插件安裝:
- 確保以下插件被正確安裝:
- 根據角色管理權限的插件:Role-based Authorization Strategy
-
遠程使用ssh的插件:SSH plugin
-
通過系統管理->全局工具配置來進行全局工具的配置,比如maven的配置:
- 新增maven的安裝配置:
- 在系統管理->系統配置中添加全局ssh的配置,這樣Jenkins使用ssh就可以執行遠程的linux腳本了:
角色權限管理¶
我們可以使用Jenkins的角色管理插件來管理Jenkins的用戶,比如我們可以給管理員賦予所有權限,運維人員賦予執行任務的相關權限,其他人員只賦予查看權限。
- 在系統管理->全局安全配置中啟用基於角色的權限管理:
- 進入系統管理->Manage and Assign Roles界面:
- 添加角色與權限的關系:
- 給用戶分配角色: