企業級 DevOps 應用實戰基於 GitLab CI/CD 和雲端原生技術

溫紅化

  • 出版商: 機械工業
  • 出版日期: 2024-01-01
  • 售價: $599
  • 貴賓價: 9.5$569
  • 語言: 簡體中文
  • 頁數: 288
  • 裝訂: 平裝
  • ISBN: 7111744616
  • ISBN-13: 9787111744610
  • 相關分類: DevOps
  • 立即出貨 (庫存 < 4)

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

商品描述

全書共分為3篇,第1篇為第1-3章,主要介紹雲端運算、雲端原生、
微服務、敏捷開發、持續整合、DevOps、docker容器技術以及Kubernetes(簡稱k8s核心)技術等。
第2篇為第4-9章,主要介紹了GitLab安裝部署與基礎使用、GitLab CI/CD中Runner的類型以及部署、GitLab CI/CD管線模型、
GitLab CI/CD變數、GitLab CI/CD管線的觸發方式以及GitLab CI/CD管線中的快取和附件等。
第3篇為第10-13章,主要介紹了前後端專案的創建、GitLab CI/CD中基於SonarQube的靜態程式碼檢查,
以及GitLab CI/CD 中的編譯、建置、發布、部署、測試和上線等流程。
全書以建置企業級DevOps應用平台為目標,從雲端原生技術基礎容器以及Kubernetes技術著手介紹;
接著介紹了GitLab CI/CD的常見功能應用;最後從零開始,以經典的前後端專案為例,
以解決企業內研發流程的困境為思路,一步一步地將整個專案的DevOps管線創建起來。
此外,也集合Kubernetes技術進行可動態伸縮的彈性部署上線。

目錄大綱

第1篇DevOps技術基礎
第1章DevOps技術背景
1.1雲端運算簡介
1.1.1什麼是虛擬化技術
1.1.2什麼是雲端運算
1.1.3雲端運算的類型與應用
1.2雲原生簡介
1.3微服務簡介
1.4敏捷開發簡介
1.5CICD簡介
1.6DevOps簡介
1.7GitLab CICD簡介
第2章容器技術基礎
2.1容器概述
2.1.1容器技術簡介
2.1.2docker技術簡介
2.2虛擬機器及docker環境安裝
2.2.1VMware虛擬機器的安裝
2.2.2VMware安裝CentOS 7作系統的虛擬機器
2.2.3docker環境安裝
2.3docker映像常用作命令
2.4docker容器的基礎應用
2.4.1docker容器的常用作命令詳解
2.4.2docker容器實戰:基於docker署MySQL2.5
自訂docker映像
2.5 .1Dockerfile常用的語法
2.5.2鏡像編譯實戰:將flask應用編譯為docker映像並署
2.5.3發布鏡像到dockerhub
2.6docker-compose的應用
2.6.1docker-compose的安裝
2.6.2docker-compose實戰:編譯署flask應用與redis資料庫
2.7建構私有dockerhub服務
2.8DockerSwarm叢集
2.8.1DockerSwarm叢集署
2.8.2基於DockerSwarm實作服務彈性擴充容
第3章Kubernetes核心技術
3.1初識Kubernetes
3.1.1Kubernetes的產生背景
3.1.2Kubernetes的元件背景3.
3.1.3Kubernetes的常見件
3.2Kubernetes叢集環境搭建
3.3Kubernetes快速體驗
3.4Kubernetes的命名空間
3.4.1對命名空間進行作
3.4.2利用yaml設定檔方式處理命名空間
3.5Pod基礎作
3.5.1透過命令列方式作Pod
3.5.2透過yaml設定檔的方式作Pod
3.5.3Pod的yaml設定檔的編寫方法
3.6Pod中常用配置
3.6.1Pod中的容器名稱和鏡像配置
3.6.2Pod中容器鏡像拉取策略配置
3.6. 3Pod中容器的環境變數配置
3.6.4Pod中容器啟動指令配置
3.6.5Pod中容器的連接埠配置
3.6.6Pod中容器的配額配置
3.6.7Pod中的容器探針配置
3.6.8Pod中的初始化容器
3.6.9Pod中的鉤子函數
3.6.10Pod的定向調度方式
3.6.11Pod的和性調度方式
3.6.12污點與容忍的調度方式
3.7Pod控制器
3.7.1Pod控制器簡介
3.7.2ReplicaSet控制器
3.7.3Deployment控制器
3.7. 4Deployment控制器實作捲動發布
3.7.5Deployment控制器實作版本回
3.7.6Deployment控制器實作金絲雀發布
3.7.7HPA控制器實作全自動動態擴充容
3.7.8DaemonSet控制器
3.7.9Job和CronJob控制器
3.7. 10StatefulSet控制器
3.8Kubernetes中Service服務元件
3.8.1ClusterIP類型的Service
3.8.2Headless類型的Service
3.8.3NodePort類型的Service
3.8.4ExternalName類型的Service
3.9Kubernetes中的儲存管理
3.9.1HostPath2NFS
3.9.2儲存
3.9.3PV與PVC
3.9.4ConfigMap配置儲存
3.9.5Secret儲存第2篇GitLab CICD功能應用
第4章GitLab基礎
4.1GitLab CICD簡介
4.2GitLab環境署
4.2.1基於Linux虛擬機署GitLab
4.2.2基於docker GitLab
4.2.3基於Kubernetes署GitLab
4.3GitLab基礎應用
4.3.1GitLab創建群組及專案
4.3.2GitLab代碼倉分支管理
4.3.3GitLab需求任務管理
4.4GitLab代碼管理
4.4.1配置SSH公鑰
4.4.4.22與更新代碼提交代碼
4.5Git常用指令
4.5.1安裝Git客戶端
4.5.2Git常用的指令
第5章GitLab CICD設定Runners
5.1GitLab-Runner簡介
5.2註冊GitLab-Runner準備工作
5.3設定shell類型的GitLab-Runner
5.4設定docker類型的GitLab-Runner
第6章GitLab CICD管線模型
6.1GitLab CICD管線快速體驗
6.2基本類型管線
6.3有向圖(DAG)類型管線
6.4父子類型管線
6.5多專案類型管線
第7章GitLab CICD變數
7.1預定義變數
7.2ya中自訂變數
UI中自訂變數目錄
第8章GitLab CICD管線的觸發方式
8.1透過分支名觸發
8.2透過MergeRequest觸發
8.3透過打tag觸發
8.4手動按鈕觸發
8.5定時任務觸發
8.6透過trigger觸發
8.7透過偵測目錄檔案修改觸發
8.8透過正規匹配方式觸發
第9章GitLab CICD中的快取與附件
9.1相同分支不同Job之間實現資料共享
9.2不同分支相同Job之間實現資料共享
9.3不同分支不同Job之間實現資料共享
9.4將文件資料夾存為附件
9.5基於artifacts在不同的Job和runner之間實現資料共享
第3篇企業級DevOps實戰
第10章環境準備
10.1基於SpringBoot創建後端項目
10.2基於Vue創建前端項目
10.3基於pytest創建自動化測試
10.4DevOps流水線設計
第11章GitLab CICD靜態程式碼檢查
11.1後端Java專案的單元測試
11.2署SonarQube平台
11.3配置SonarQube整合GitLab 
11.4設定SonarQube使用GitLab帳號授權登入
11.5設定後端Java專案靜態程式碼檢查
第12章GitLab CICD編譯表
12.1後端Java專案編譯Jar
12.2後端Java專案建置docker鏡像
12.3前端Web專案建置docker映像
第13章GitLab CICD 署應用
13.1後端Java專案署
13.2前端Web專案署
13.3署自動化測試
13.4DevOps管線應用流程. ........