DevOps : 企業級 CI/CD 實戰

李澤陽

  • 出版商: 清華大學
  • 出版日期: 2024-02-01
  • 售價: $534
  • 貴賓價: 9.5$507
  • 語言: 簡體中文
  • ISBN: 730265185X
  • ISBN-13: 9787302651857
  • 相關分類: DevOps
  • 立即出貨 (庫存 < 3)

  • DevOps : 企業級 CI/CD 實戰-preview-1
  • DevOps : 企業級 CI/CD 實戰-preview-2
  • DevOps : 企業級 CI/CD 實戰-preview-3
DevOps : 企業級 CI/CD 實戰-preview-1

買這商品的人也買了...

相關主題

商品描述

本書主要圍繞DevOps的核心CI/CD,詳細講解了企業級CI/CD的相關技術內容。全書共11章,首先講解了持續集成系統Jenkins入門知識、Jenkins運維管理、Jenkins流水線的語法與進階。接著講解了持續集成階段的工具平臺實踐、GitLab版本控制系統實踐、Maven等構建工具實踐、SonarQube代碼質量平臺實踐、Nexus Repository 3製品庫平臺實踐。持續部署分別基於雲主機和Kubernetes環境的持續集成和持續部署實踐。最後講解了使用基礎設施即代碼工具Terraform管理阿裡雲平臺資源。通過本書的學習,讀者將熟練掌握企業級CI/CD的實踐方法和思路。 本書適合具有1~3年運維或開發工作經驗、或者對DevOps感興趣的讀者學習。

目錄大綱

第1章  Jenkins系統入門 1

1.1 Jenkins系統概述 1

1.1.1  Jenkins概述 1

1.1.2  Jenkins應用場景 2

1.2  Jenkins系統安裝 3

1.2.1  準備工作 4

1.2.2  安裝Jenkins 5

1.2.3  初始化 7

1.2.4  安裝Agent節點 11

1.3  Jenkins數據目錄 16

1.4  本章小結 18

第2章  Jenkins系統管理 19

2.1 用戶管理 19

2.1.1  Jenkins本地用戶 19

2.1.2  LDAP認證集成 21

2.2 權限管理 24

2.2.1  準備 24

2.2.2  安裝Role-based插件 26

2.2.3  創建角色 27

2.2.4  授權角色 29

2.2.5  測試權限 29

2.3 憑據管理 30

2.3.1  安裝憑據插件 30

2.3.2  創建憑據 32

2.4 本章小結 33

第3章  Jenkins Pipeline實戰 34

3.1 什麽是Pipeline 34

3.1.1  Pipeline簡介 34

3.1.2  為什麽使用Pipeline 35

3.1.3  什麽是Jenkinsfile 36

3.2 Pipeline核心語法 36

3.2.1  agent節點 37

3.2.2  stages階段 38

3.2.3  post構建後操作 38

3.2.4  environment環境變量 39

3.2.5  options運行選項 40

3.2.6  parameters參數 41

3.2.7  triggers觸發器 42

3.2.8  input交互 43

3.2.9  when階段運行控制 44

3.2.10  parallel並行運行 45

3.3 Pipeline開發工具 46

3.4 共享庫實踐 49

3.4.1  創建共享庫 49

3.4.2  編寫共享庫代碼 50

3.4.3  修改全局設置 50

3.4.4  加載共享庫 52

3.5 本章小結 53

第4章  Jenkins Pipeline進階 54

4.1 Groovy編程語法 54

4.1.1  數據類型 54

4.1.2  控制語句 58

4.1.3  異常處理 61

4.1.4  函數 61

4.2 Jenkins觸發器 62

4.2.1  安裝觸發器 63

4.2.2  配置觸發器 63

4.2.3  解析Request參數 65

4.2.4  解析Header參數 68

4.2.5  解析Post參數 70

4.3 常用的DSL語句 73

4.3.1  獲取當前觸發用戶 73

4.3.2  JSON數據解析 75

4.3.3  在Pipeline中使用憑據 76

4.3.4  自定義構建ID和描述 77

4.4 本章小結 78

第5章  項目代碼管理 79

5.1 GitLab系統入門 79

5.1.1  GitLab概述 79

5.1.2  GitLab安裝部署 80

5.2 GitLab工作流 82

5.2.1  創建項目組和項目 82

5.2.2  生成和提交項目代碼 86

5.2.3  分支開發策略 87

5.3 提交流水線實踐 89

5.3.1  Jenkins配置 89

5.3.2  GitLab配置 92

5.3.3  編寫Pipeline 96

5.3.4  Pipeline優化 100

5.4 項目構建工具 102

5.4.1  Maven構建 102

5.4.2  Gradle構建 104

5.4.3  NPM構建 106

5.5 本章小結 108

第6章  代碼質量平臺實戰 109

6.1 SonarQube系統入門 109

6.1.1  SonarQube概述 109

6.1.2  SonarQube安裝 111

6.1.3  插件管理 113

6.2 SonarQube代碼掃描 115

6.2.1  SonarQube質量配置 115

6.2.2  SonarQube質量閾 116

6.2.3  Sonar Scanner配置 117

6.3 SonarQube系統集成 121

6.3.1  準備工作 121

6.3.2  命令行方式 122

6.3.3  Jenkins插件 127

6.3.4  多分支代碼掃描 130

6.4 本章小結 134

第7章  製品庫平臺實戰 135

7.1 製品庫平臺入門 135

7.1.1  管理規範 135

7.1.2  Nexus Repository 3概述 136

7.2 Nexus Repository實踐 137

7.2.1  Nexus Repository 3安裝 137

7.2.2  搭建Maven私服倉庫 138

7.2.3  搭建Maven本地倉庫 140

7.2.4  製品上傳方式 141

7.3 Nexus Repository擴展實踐 144

7.3.1  調試REST API 144

7.3.2  上傳Raw類型製品 146

7.3.3  Jenkins插件上傳製品 147

7.4 本章小結 149

第8章  雲主機環境持續部署 150

8.1 項目準備工作 150

8.1.1  分支策略 150

8.1.2  環境準備 151

8.1.3  Ansible配置 152

8.1.4  Pipeline設計 153

8.2 持續集成實踐 154

8.2.1  準備工作 154

8.2.2  設置Pipeline 157

8.3 持續部署實踐 164

8.3.1  準備工作 164

8.3.2  設置Pipeline 167

8.4 本章小結 173

第9章  Kubernetes基礎 175

9.1 Docker容器基礎 175

9.1.1  Docker簡介 175

9.1.2  Docker鏡像構建 176

9.1.3  Docker鏡像管理 178

9.2 Kubernetes基礎 180

9.2.1  資源對象 181

9.2.2  Kubectl工具發布 183

9.2.3  Helm工具發布 183

 

9.3 Kubernetes部署策略 184

9.3.1  滾動更新 184

9.3.2  零停機部署 185

9.4 本章小結 186

第10章  Kubernetes持續部署 187

10.1 持續集成流水線 187

10.1.1  準備工作 187

10.1.2  設置Pipeline 190

10.1.3  啟用GitOps 196

10.2 基於Kubectl持續部署 205

10.2.1  準備工作 205

10.2.2  設置Pipeline 207

10.3 基於Helm持續部署 211

10.3.1  準備工作 212

10.3.2  設置Pipeline 213

10.4 本章小結 218

第11章  基礎設施即代碼 219

11.1 Terraform入門 219

11.2 供應商Provider 221

11.3 定義雲資源 224

11.4 開通資源 226

11.5 本章小結 229