GitLab CI/CD 從入門到實戰
龐孟臣
買這商品的人也買了...
-
The Pragmatic Programmer 20週年紀念版 (The Pragmatic Programmer, 20th Anniversary Edition)$680$537 -
網站可靠性工程工作手冊|導入 SRE 的實用方法 (The Site Reliability Workbook)$780$616 -
矽谷工程師教你 Kubernetes:史上最全 CI/CD 中文應用指南(iT邦幫忙鐵人賽系列書)$600$510 -
完全自學!Go 語言 (Golang) 實戰聖經 (The Go Workshop: Learn to write clean, efficient code and build high-performance applications with Go)$880$695 -
Go 學習手冊 (Learning Go)$580$458 -
數位神探系列 -- 資安密碼 - 隱形帝國:數位鑑識學院尋探之旅$500$390 -
$352DevOps實施策略:原則、流程、工具和趨勢 -
你就是不寫測試才會沒時間:Kuma 的單元測試實戰 -- Java篇(iThome鐵人賽系列書)$650$507 -
和艦長一起 30 天玩轉 GitLab【第二版】(iT邦幫忙鐵人賽系列書)$650$507 -
使用 GitOps 實現 Kubernetes 的持續部署:模式、流程及工具$714$678 -
Elasticsearch 數據搜索與分析實戰$599$569 -
$305網絡攻防實訓 (微課視頻版) -
$556DevSecOps 原理、核心技術與實戰 -
$556Linux 私教課:技術內核與企業運維篇 -
Docker 實戰 6堂課:56個實驗動手做,掌握 Linux 容器核心技術(iThome鐵人賽系列書)【軟精裝】$720$562 -
從異世界歸來發現只剩自己不會 Kubernetes:初心者進入雲端世界的實戰攻略!(iThome鐵人賽系列書)【軟精裝】$720$562 -
最強 AI 投資分析:打造自己的股市顧問機器人,股票趨勢分析×年報解讀×選股推薦×風險管理$750$593 -
從異世界歸來發現只剩自己不會 Kubernetes:初心者進入雲端世界的實戰攻略!(iThome鐵人賽系列書)【平裝】$650$507 -
CI/CD 安全防護大揭密:DevSecOps 最佳實踐指南$680$530 -
重構:改善 .NET 與 C# 應用程式的設計,償還欠下的技術債 (使用 GitHub Copilot 與 Visual Studio) (Refactoring with C#: Safely improve .NET applications and pay down technical debt with Visual Studio, .NET 8, and C# 12)$850$663 -
$599企業級 DevOps 應用實戰基於 GitLab CI/CD 和雲端原生技術 -
$378LangChain 實戰:大模型應用開發實例 -
生成式 AI 提示工程|以前瞻性的設計打造穩定、可信任的 AI 解決方案 (Prompt Engineering for Generative AI: Future-Proof Inputs for Reliable AI Outputs)$880$695 -
GitHub Copilot 學習手冊|效率倍增的 AI 程式設計力 (Learning Github Copilot: Multiplying Your Coding Productivity Using AI)$720$569 -
LangChain 學習手冊|使用 LangChain 與 LangGraph 建構 AI 與 LLM 應用程式 (Learning LangChain: Building AI and LLM Applications with LangChain and LangGraph)$680$537
簡體館年度書展|現貨2書79折3書75折 詳見活動內容 »
-
VIP 95折
深入淺出 SSD 測試 : 固態存儲測試流程 方法與工具$594$564 -
VIP 95折
MCP 開發從入門到實戰$515$489 -
85折
$806Linux x64 匯編語言編程 -
VIP 95折
MCP 極簡開發 : 輕鬆打造高效智能體$479$455 -
VIP 95折
RISC-V 架構 DSP 處理器設計$534$507 -
VIP 95折
硬件系統模糊測試:技術揭秘與案例剖析$419$398 -
85折
$454RAG 實踐權威指南:構建精準、高效大模型之道 -
VIP 95折
CUDA 並行編程與性能優化$714$678 -
VIP 95折
生成式視覺模型原理與實踐$288$274 -
87折
$459AI大模型:賦能通信產業 -
VIP 95折
科學預測——預見科學之美$408$388 -
VIP 95折
Processing創意編程入門:從編程原理到項目案例$299$284 -
VIP 95折
大模型驅動的具身智能 架構,設計與實現$534$507 -
VIP 95折
納米級CMOS VLSI電路(可制造性設計)$474$450 -
VIP 95折
Manus應用與AI Agent設計指南:從入門到精通$359$341 -
87折
$360高薪Offer 簡歷、面試、談薪完全攻略 -
VIP 95折
軟件系統優化$534$507 -
VIP 95折
芯片的較量 (日美半導體風雲)$414$393 -
VIP 95折
Manus AI 智能體從入門到精通$294$279 -
87折
$981深度學習:基礎與概念 -
85折
$505GitHub Copilot 編程指南 -
87折
$469Cursor 與 Copilot 開發實戰 : 讓煩瑣編程智能化 -
85折
$551C#核心編程200例(視頻課程+全套源程序) -
VIP 95折
Verilog HDL計算機網絡典型電路算法設計與實現$354$336 -
VIP 95折
SAAS + AI 架構實戰:業務解析、架構設計、AI 應用$708$673
簡體館年度書展|現貨2書79折3書75折 詳見活動內容 »
-
85折
$806Linux x64 匯編語言編程 -
VIP 95折
MCP 極簡開發 : 輕鬆打造高效智能體$479$455 -
VIP 95折
硬件系統模糊測試:技術揭秘與案例剖析$419$398 -
VIP 95折
生成式視覺模型原理與實踐$288$274 -
87折
$459AI大模型:賦能通信產業 -
VIP 95折
科學預測——預見科學之美$408$388 -
VIP 95折
Processing創意編程入門:從編程原理到項目案例$299$284 -
87折
$360高薪Offer 簡歷、面試、談薪完全攻略 -
VIP 95折
軟件系統優化$534$507 -
85折
$505GitHub Copilot 編程指南 -
85折
$551C#核心編程200例(視頻課程+全套源程序) -
VIP 95折
SAAS + AI 架構實戰:業務解析、架構設計、AI 應用$708$673 -
VIP 95折
深入淺出 Docker, 2/e$419$398 -
85折
$658Unity 特效制作:Shader Graph 案例精講 -
79折
$275零基礎玩轉國產大模型DeepSeek -
VIP 95折
人工智能大模型:機器學習基礎$774$735 -
VIP 95折
RAG 極簡入門:原理與實踐$419$398 -
VIP 95折
大模型實戰 : 從零實現 RAG 與 Agent 系統$419$398 -
VIP 95折
算法趣學(第2版)$348$331 -
VIP 95折
大模型理論與實踐——打造行業智能助手$354$336 -
VIP 95折
大模型應用開發 RAG 實戰課$599$569 -
85折
$509生成式人工智能 (基於 PyTorch 實現) -
VIP 95折
機器人抓取力學$894$849 -
VIP 95折
集成電路版圖設計從入門到精通$474$450 -
VIP 95折
Java 學習筆記, 6/e$839$797
相關主題
商品描述
本書主要介紹GitLab CI/CD的相關內容。首先介紹GitLab CI/CD的基礎知識,包括CI/CD的幾個基本概念(pipeline、stages、job、GitLab Runner和.gitlab-ci.yml文件);然後介紹GitLab CI/CD的35個關鍵詞、每個關鍵詞的語法及其使用場景,並給出一些示例;最後介紹CI/CD的實踐,通過3種不同的項目詳細講解各種部署方式,包括微服務架構項目流水線開發、GitLab CI/CD與Kubernetes的集成,以及如何將項目部署到Kubernetes集群中等。本書還給出了兩個附錄,分別是GitLab CI/CD中的默認變量和GitLab CI/CD測試題。
本書適用於想要提高研發團隊的軟件集成、軟件交付效率的開發和運維人員。
作者簡介
龐孟臣 (網名:拿我格子衫來)滴普科技高級前端開發人員,主要從事一線軟件開發、CI/CD 工作流搭建等工作。工作之餘,他熱衷技術分享,是CSDN 前端領域優秀創作者,先後出品了“Monaco Editor 教程”“GitLab CI/CD 教程”“Node-RED 教程”等專欄。已申請技術專利 6 項。
目錄大綱
第 1章 認識GitLab CI/CD 1
1.1 CI/CD的含義 2
1.2 GitLab CI/CD簡介 2
1.3 GitLab CI/CD的幾個基本概念 3
1.4 小結 6
第 2章 CI/CD環境GitLab Runner 7
2.1 介紹 7
2.2 安裝GitLab Runner 8
2.2.1 使用Docker安裝GitLab Runner 8
2.2.2 在Linux系統上安裝GitLab Runner 9
2.3 註冊runner 9
2.4 不同執行器的特點 12
2.5 配置runner 14
2.6 runner的工作流程 17
2.7 小結 18
第3章 流水線內容.gitlab-ci.yml 19
3.1 存放位置 19
3.2 新建與編輯 20
3.3 流水線的結構 23
3.4 簡單流水線示例 24
3.5 關鍵詞 26
3.6 小結 27
第4章 初階關鍵詞 28
4.1 stages 29
4.2 stage 29
4.3 script 31
4.4 cache 32
4.5 image 35
4.6 tags 35
4.7 variables 37
4.7.1 在.gitlab-ci.yml文件中定義變量 37
4.7.2 在CI/CD設置中定義變量 38
4.7.3 默認變量 40
4.8 when 41
4.9 artifacts 42
4.10 before_script 44
4.11 after_script 44
4.12 only與except 44
4.12.1 only:refs/except:refs 45
4.12.2 only:variables/except:variables 46
4.12.3 only:changes/except:changes 47
4.12.4 only:kubernetes/except:kubernetes 47
4.13 小結 48
第5章 中階關鍵詞 49
5.1 coverage 49
5.2 dependencies 50
5.3 allow_failure 51
5.4 extends 52
5.5 default 54
5.6 inherit 55
5.7 interruptible 57
5.8 needs 59
5.9 pages 62
5.10 parallel 63
5.11 retry 65
5.12 timeout 66
5.13 release 66
5.14 小結 67
第6章 高階關鍵詞 68
6.1 rules 68
6.1.1 rules:if 69
6.1.2 rules:changes 69
6.1.3 rules:exists 70
6.1.4 rules:allow_failure 70
6.1.5 rules:variables 71
6.2 workflow 72
6.3 trigger 73
6.4 include 74
6.4.1 include:local 75
6.4.2 include:file 75
6.4.3 include:remote 76
6.4.4 include:template 77
6.5 resource_group 77
6.6 environment 80
6.6.1 environment:name 81
6.6.2 environment:url 81
6.6.3 environment:on_stop 83
6.6.4 environment:action 85
6.6.5 environment:auto_stop_in 86
6.7 services 86
6.8 secrets 89
6.9 dast_configuration 90
6.10 小結 91
第7章 GitLab CI/CD部署前端項目 92
7.1 準備工作 92
7.2 定義.gitlab-ci.yml的公共配置 94
7.3 安裝階段 94
7.4 測試階段 96
7.5 編譯階段 99
7.6 部署階段 100
7.6.1 使用Docker部署 100
7.6.2 使用阿裡雲的OSS部署 104
7.6.3 遠程服務器部署 106
7.7 流水線優化 108
7.7.1 提取公共配置 109
7.7.2 多環境部署 109
7.7.3 自動取消舊流水線 110
7.7.4 部署凍結 112
7.7.5 定時部署 114
7.7.6 在線調試流水線 115
7.8 小結 118
第8章 Java復雜微服務應用的CI/CD方案 119
8.1 復雜應用現狀 120
8.2 CI/CD方案 120
8.3 菲茲商城項目 121
8.3.1 Spring Boot後端應用 121
8.3.2 React前端應用 123
8.4 前、後端單獨構建的流水線 125
8.5 構建單鏡像 129
8.5.1 前端UI流水線 130
8.5.2 後端服務流水線 132
8.6 使用分佈式緩存MinIO 134
8.6.1 使用Docker安裝MinIO 135
8.6.2 配置GitLab Runner使用MinIO存儲緩存 138
8.7 多項目微服務依賴構建單應用 140
8.7.1 項目背景及軟件架構 140
8.7.2 多項目同時構建 141
8.7.3 依賴構建 143
8.7.4 自由選擇分支tag構建 144
8.7.5 運行流水線 145
8.8 小結 147
第9章 部署Python應用到Kubernetes中 148
9.1 Kubernetes簡介 148
9.1.1 命名空間Namespace 149
9.1.2 服務Service 149
9.1.3 工作負載Deployment 150
9.1.4 命令行管理工具kubectl 150
9.2 持續部署方案設計 150
9.3 配置kubectl 151
9.4 Python項目配置 154
9.5 流水線開發 157
9.5.1 構建並推送Docker鏡像 157
9.5.2 在流水線中使用kubectl鏡像 158
9.6 流水線優化 162
9.6.1 增加釘釘通知 163
9.6.2 外部觸發流水線 165
9.6.3 .gitlab-ci.yml權限管控 167
9.6.4 安全部署 168
9.6.5 大項目優化 169
9.7 小結 172
附錄1 GitLab CI/CD中的默認變量 173
附錄2 GitLab CI/CD測試題 176


