和艦長一起 30 天玩轉 GitLab【第二版】(iT邦幫忙鐵人賽係列書)

和艦長一起 30 天玩轉 GitLab【第二版】(iT邦幫忙鐵人賽係列書) pdf epub mobi txt 電子書 下載 2025

陳正瑋
圖書標籤:
  • GitLab
  • DevOps
  • 持續集成
  • 持續交付
  • CI/CD
  • 版本控製
  • 軟件開發
  • iT邦幫忙
  • 鐵人賽
  • Git
想要找書就要到 小特書站
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

具體描述

──── 全新改版 ────
 
配閤 GitLab 15 全新改版,內容增量 1.5 倍
更多圖片、更多文字、更多延伸思考及更多的實戰經驗,
大幅改寫第一版超過一半以上的內容,
為讀者提供清晰易懂的 GitLab 入門指引!
 
  ♛ 第一本颱灣本土的 GitLab 專書 ♛
 
  還在苦苦尋覓適閤團隊的 DevOps 工作流程與工具?
  不如儘早擁抱 GitLab Workflow 已為您備齊的The One DevOps Platform!
 
  全新改版 ☛ 內容增量 1.5 倍,按著 DevOps Lifecycle,跟著 GitLab Hero 一起學習 GitLab 流派的 DevOps 功夫!
  入門指引 ☛ 幫助讀者迅速進入 GitLab 建構的開發維運工具生態係!
  經驗分享 ☛ 在規劃 CI/ CD Pipeline 時會遇見哪些重要的關鍵問題?
 
  本書初版改編自第 11 屆 iT 邦幫忙鐵人賽 DevOps 組冠軍係列文章 ──《和艦長一起 30 天玩轉 GitLab》── 是第一本颱灣本土的 GitLab 專書。隨著 2022 年 GitLab 邁入第 15 版,本書同步大幅改版,內容增量 1.5 倍,將帶領讀者入門 GitLab —— The One DevOps Platform!
 
  精彩內容
 
  □ 運用 GitLab 建構團隊的開發協作工作流程
  迅速一窺 GitLab 規劃的 DevOps Lifecycle,搭配 GitLab 的豐富功能,為團隊搭建一條從開發至維運的工作流程。
 
  □ Pipeline as Code 以簡便的方式建立 CI/CD Pipeline
  隻要一個 YAML 檔案,即可編織齣多條包含不同工作內容的 Pipeline,GitLab CI 是團隊在實踐 DevOps 之持續整閤、持續交付及自動化的重要角色。
 
  □GitLab Auto DevOps 之牛刀小試
  認識名為 Auto DevOps 的神秘黑魔法,究竟能自動產生 DevOps Pipeline 的神奇功能,其葫蘆裡賣的是什麼藥。
 
  □ 一步一腳印學習 CI/CD 的關鍵要點
  跟著作者一起從零開始建立 CI/CD Pipeline,本書不隻教你如何使用 GitLab CI,更帶著讀者一步一步的學習在設計與實踐 CI/CD Pipeline 時,有哪些需要思考的關鍵要點。
 
好評推薦
 
  早在 2015 年,那個颱灣對於 DevOps 還懞懞懂懂的年代,正瑋與一群熱血份子就率先成立 DevOps Taiwan 社群,對於推廣 DevOps 觀念及技術,有難以磨滅的貢獻。在這本書中,你並不會看到他一股腦推銷 GitLab 功能,而是不斷為文提醒讀者反思。有技術,有熱情,由他來詮釋 DevOps,我們是充滿信心的。──── 敏捷魔藥師|葉秉哲(William Yeh)
 
  作者除瞭完整地闡述 GitLab 的整體概念之外,更特別在第 5 章,針對 CI / CD / Pipeline 該怎麼設計與實踐,有著實務的介紹,把我心裡的想法透過 GitLab 實踐齣來。──── 技術部落格《Complete Think》作者|Rick Hwang
 
  如果你正在找尋團隊可以使用的工具及平颱;想要快速且全麵的瞭解 GitLab 這個 DevOps 平颱;也希望可以從中看到可參考的範例作為開始導入的評估基準,那麼這本書會是你非常重要的資訊來源。──── 係統分析師|GitLab Hero 陳佑竹(墨嗓)
《玩轉現代軟體開發:從 Git 基礎到 CI/CD 實戰》 深度解析:駕馭程式碼版本控製與自動化部署的現代實戰指南 隨著軟體開發的複雜度日益提升,掌握高效的版本控製係統和自動化的持續整閤/持續部署(CI/CD)流程,已成為每一位開發者與團隊管理者必備的核心技能。本書旨在提供一個全麵、深入且極其實用的指南,帶領讀者跨越理論的門檻,直抵實戰的核心,透過詳盡的範例與清晰的架構解說,讓複雜的工具與流程變得清晰易懂。 本書聚焦於現代軟體開發生命週期中最關鍵的兩大支柱:分散式版本控製係統(DVCS)的精湛運用,以及建構健壯、高效能的 CI/CD 管線。我們將從最基礎的 Git 命令語法與概念講起,逐步深入到複雜的分支策略、衝突解決機製,並探討如何利用這些能力來協同管理大型專案。隨後,本書將無縫銜接到自動化部署的世界,剖析 CI/CD 的核心價值,並提供實際操作的藍圖,指導讀者如何設計、實施並維護一個能顯著提升開發效率與軟體品質的自動化流程。 第一部分:紮實的 Git 基礎與高級策略 我們深知,版本控製的基礎若不穩固,後續的協作與流程建構將寸步難行。因此,本書的第一部分將徹底重塑讀者對 Git 的理解。 1. Git 核心哲學與基礎操作的精準掌握: 從 Git 的內部儲存結構、物件模型(Blob, Tree, Commit, Tag)開始,我們解釋為何 Git 如此快速且可靠。接著,詳細介紹初始化倉庫、基本提交、查看歷史記錄(`log` 的多樣化展示方式)、暫存區(Staging Area)的精妙設計,以及如何安全地撤銷(`revert`, `reset`, `checkout`)和修復錯誤。對於初學者而言,理解這些底層機製,能有效避免在遇到複雜情況時手足無措。 2. 分支管理藝術:從簡單到複雜的工作流: 分支是 Git 的靈魂。本書不僅介紹基礎的 `branch` 和 `merge`,更著重於闡述業界主流的分支模型,例如 Git Flow 的嚴謹架構,以及更輕量、更適閤快速迭代的 Trunk-Based Development(TBD)。我們將花費大量篇幅探討如何有效處理閤併衝突(Merge Conflicts),並介紹 `rebase` 的使用場景與風險,教導讀者如何保持專案歷史記錄的清晰、線性和易於追溯。特別是針對歷史紀錄的重寫(如 `amend`, `rebase -i`),我們提供瞭詳細的步驟與注意事項,確保團隊協作的順暢性。 3. 協作的進階技巧與倉庫維護: 當團隊規模擴大時,如何有效地管理遠端倉庫(Remotes)與子模組(Submodules)成為挑戰。本書將涵蓋如何使用 `git pull --rebase` 保持本地分支的整潔,如何利用 `stash` 暫時保存工作進度,以及如何使用 `bisect` 快速定位引入 Bug 的那一次提交。此外,我們也將探討大型專案中,如何透過檔案操作(如 `git filter-branch` 或更現代的工具)來安全地清理歷史紀錄,以縮小倉庫體積或移除敏感資訊。 第二部分:CI/CD 管線的設計與實施 僅僅學會版本控製是不夠的,現代軟體開發要求的是「自動化」。本書的第二部分將引導讀者建立一套完整的、端到端的自動化流程,確保每一次程式碼變更都能快速、可靠地通過測試並部署到目標環境。 1. CI/CD 核心概念的確立與工具鏈的選擇: 我們首先釐清持續整閤(CI)、持續交付(CD)與持續部署(CDP)之間的細微差異,並探討為什麼自動化是現代軟體工程的基石。在工具的選型上,雖然我們強調通用原則,但將會以業界廣泛應用的開源或主流 CI/CD 平颱作為範例載體,詳細解析它們的架構、Agent(Runner)的管理、安全配置(如敏感資料的處理),以及如何與各種程式語言的生態係統(如 Node.js, Python, Java, Go)進行整閤。 2. 建構高效能的整閤測試管線: 持續整閤的關鍵在於快速反饋。本書將詳細闡述如何結構化地編排 CI 管線中的各個階段:編譯/建置(Build)、單元測試(Unit Test)、整閤測試(Integration Test)和靜態程式碼分析(Static Analysis)。我們將討論如何優化測試執行時間,例如使用平行化測試、快取依賴項,以及如何有效利用測試覆蓋率報告來指導開發方嚮。對於 Docker 容器化專案,我們將專門講解如何將 Docker Build 和 Image Push 的步驟無縫嵌入管線中。 3. 部署策略與環境管理: 從 CI 成功邁嚮 CD 纔是真正的挑戰。本書深入探討不同的部署策略,例如藍綠部署(Blue/Green Deployment)、金絲雀發布(Canary Release)以及滾動更新(Rolling Updates)。我們將講解如何使用配置管理工具或專門的部署腳本,確保應用程式能安全、零停機地切換到新版本。環境管理部分,我們將聚焦於如何使用環境變數或配置檔案來區分開發、測試、預發布和生產環境的差異,確保 CI/CD 流程的通用性與安全性。 4. 監控、迴滾與流程優化: 一個完整的 CI/CD 流程不應在部署後終止。我們將探討如何將部署結果與監控係統(如 Prometheus, Grafana)整閤,建立即時的健康檢查機製。更重要的是,我們將提供一套標準化的流程,說明在發生部署失敗或運行異常時,如何快速觸發自動化迴滾(Rollback)機製,將服務恢復到上一個穩定狀態,從而最大化係統的可用性。 本書特色: 實戰導嚮,避免冗長理論: 每一章節都緊密結閤實際專案需求,提供可立即複製並修改的配置範例。 係統性思維培養: 不僅教授工具如何操作,更著重於培養讀者設計符閤自身團隊需求的版本控製策略與自動化架構的能力。 適用廣泛的知識體係: 內容設計涵蓋瞭 DVCS 的核心原理和現代 DevOps 實踐的通用框架,適用於絕大多數的軟體技術棧。 透過本書的引導,讀者將能從容應對現代軟體專案中版本控製的複雜性,並建立起一套強大、可靠且可持續優化的 CI/CD 自動化流程,從根本上提升開發效率與產品交付質量。

著者信息

作者簡介
 
陳正瑋
 
  錶麵上是隻會在臉書釋放夫妻閃光文的愛妻傢,私底下其實是默默關注新知的技術愛好者。平時熱衷關注 DevOps 相關新知與技術,期盼未來人人都可以像畢凱艦長一樣用嘴巴叫所有主機做事!工作之餘亦擔任 GitLab Hero、DevOps Taiwan community 誌工、DevOpsDays Taipei 的其中一位 Organizer。
 
  曾擔任《Effective DevOps 中文版》翻譯,並且於第 11 屆 iT 邦幫忙鐵人賽以《和艦長一起 30 天玩轉 GitLab》 網路係列文章獲得 DevOps 組冠軍。
 
  個人網站 ☛chengweichen.com

圖書目錄

CH01 DevOps 及 GitLab 的基本認識
1-1 何謂 DevOps
1-1-1 DevOps 的關鍵歷史
1-1-2 廣義的 DevOps
1-1-3 狹義的 DevOps
1-1-4 DevOps 的現在與未來
1-2 GitLab 基本認識
1-3 【延伸思考】GitLab CE 和 GitLab EE 該如何選擇?
1-4 【延伸思考】自行架設 GitLab Server 或使用 gitlab.com?
 
CH02 使用 GitLab
2-1 GitLab 的環境需求
2-2 GitLab 的安裝
2-2-1 以 Package Management 的方式安裝 GitLab Server
2-2-2 以 Docker Container 的方式安裝 GitLab Server
2-3 Admin Area:維運 GitLab Server 的管理者後颱
2-4 GitLab 的 User 與權限控管
2-4-1 使用者註冊與新增使用者
2-4-2 權限控管
2-5 First Project 與 First Commit
2-5-1 建立第一個 Project
2-5-2 送齣第一個 Commit
2-6 【延伸知識】神奇的自動安裝包 Omnibus GitLab
2-7 【延伸知識】架設並使用 Mattermost 作為團隊的溝通協作平颱
 
CH03 GitLab: The One DevOps Platform
3-1 DevOps Lifecycle
3-2 Plan
3-2-1 專案管理工具 1:Issue Tracker、Issue Board 與 Kanban
3-2-2 專案管理工具 2:Epic、Roadmap、Iterations 與 Milestones
3-2-3 專案管理工具 3:CRM 與 Service Desk
3-3 Create
3-3-1 專注於當前的任務:To-Do List 與 Issue List
3-3-2 貼心的便捷功能 1:自動關聯 Issue、Commit 及 Merge Request
3-3-3 貼心的便捷功能 2:Quick Actions與 Description Templates
3-3-4 為專案撰寫文件:Snippets、Wiki & GitLab Pages
3-3-5 隨時可用的線上編輯器:Web IDE
3-4 Verify
3-4-1 GitLab 內建整閤的 CI 工具:GitLab CI
3-4-2 強大的 DevOps Pipeline 範本:Auto DevOps
3-5 Package
3-5-1 GitLab 內建的套件儲存庫:Package Registry
3-5-2 GitLab 內建的容器儲存庫:Container Registry
3-6 Secure
3-6-1 檢查程式碼是否含有已知漏洞:Static Application Security Testing (SAST)
3-6-2 找齣不小心 Commit 的重要機敏資訊:Secret Detection
3-6-3 運用程式碼品質掃描提供 Code 持續改善方嚮:Code Quality
3-6-4 針對 Container image 的漏洞掃描:Container Scanning
3-6-5 付費的進階 Security 功能
3-7 Release
3-7-1 有條不紊的釋齣你的程式:Releases
3-7-2 管理應用程式的部署:Environments
3-7-3 動態管理應用程式的功能:Feature flags
3-8 Configure
3-8-1 使用 GitLab K8s Agent 連接 Kubernetes
3-8-2 使用 Terraform
3-8-3 ChatOps
3-9 Monitor
3-9-1 Error Tracking
3-9-2 Product Analytics
3-9-3 更多 Incident management 功能
3-10 Govern
3-11 Manage
3-11-1 Value Stream Analytics
3-11-2 其他的 Analytics 與 Charts
 
CH04 GitLab CI
4-1 GitLab Runner 簡介
4-2 架設第一個 GitLab Runner
4-2-1 不同層級的 GitLab Runner
4-2-2 安裝與架設 GitLab Runner
4-2-3 架設 Docker in Docker 的 GitLab Runner
4-3 建立第一個 CI Job
4-3-1 .gitlab-ci.yml 的基本結構
4-4 【延伸知識】Git 分支策略與 GitLab flow
4-4-1 GitLab flow 新增的 Branch
4-4-2 GitLab flow 的原則
4-4-3 GitLab flow 的工作流程
4-5 【延伸思考】該為 GitLab Runner 選擇哪一種 Executor?
4-5-1 GitLab Runner 與 Executor 的關係
4-5-2 目前可選用的 Executor
4-5-3 該選擇哪一種 Executor?
4-6 【延伸思考】為何 GitLab CI 沒有在運作?
4-7 【延伸思考】當 CI Service 臨時無法提供服務時該怎麼辦?
4-8 【延伸知識】運用 GitLab CI 實現更多自動化動作
4-8-1 GitLab API 與 CI Trigger
4-8-2 Scheduling Pipelines
 
CH05 實作 CI/CD Pipeline
5-1 本章範例情境與實作環境說明
5-1-1 範例情境說明
5-1-2 建立實作環境
5-2 Stage: build
5-2-1 建立 Job: build
5-2-2 Stage: Build 之目的
5-2-3 Artifacts repository
5-2-4 使用 GitLab CI - Job Artifacts 功能
5-2-5 【延伸思考】Stage: build 的關鍵議題?
5-3 Stage: deploy
5-3-1 建立 Job: deploy
5-3-2 Stage: deploy 之目的
5-3-3 Artifacts 的檔案傳遞
5-3-4 執行多項 Deploy 相關動作
5-3-5 【延伸思考】Stage: deploy 的關鍵議題?
5-4 Stage: test
5-4-1 建立 Job: build
5-4-2 Stage: test 之目的
5-4-3 執行自動化測試
5-4-4 【延伸思考】Stage: test 的關鍵議題?
5-5 Pipeline 微調與重構 1
5-5-1 建立更多的 Pipeline
5-5-2 調整 only: 規則,閤併相似的 Job
5-5-3 善用 extends:,重複利用相同的 Job 內容
5-5-4 運用 before_script: 完成 Job 所需的事前動作
5-5-5 Merge request pipeline 與自動 Merge
5-5-6 在 pre-production 環境,實施壓力測試
5-5-7 【延伸思考】多條 Pipeline 的關鍵議題?
5-6 Pipeline 微調與重構 2
5-6-1 根據不同條件觸發 Job
5-6-2 根據不同的條件產生 Job
5-6-3 運用 Protect variable,保護重要的變數
5-6-4 【延伸思考】Production pipeline 的關鍵議題
5-6-5 運用巢狀 include: 管理 Pipeline
5-6-6 【延伸思考】當 Pipelines 與 Jobs 越來越複雜時?
 
CH06 Auto DevOps 之牛刀小試
6-1 Auto DevOps 簡介
6-1-1 Auto DevOps Requirements
6-1-2 Auto DevOps 各種 Feature
6-2 在沒有 Kubernetes 的狀況下試用 Auto DevOps
6-3 為 Auto DevOps 啟用 Kubernetes
6-4 Auto DevOps 之 Auto Deploy
6-4-1 Auto Deploy 之 Stage: Staging
6-4-2 Auto Deploy 之 Stage: Production
6-5 Auto DevOps 之 Auto Browser Performance Testing
6-5-1 瀏覽 sitespeed.io 檢測報告
6-5-2 針對多個 URL 進行 Performance Testing
6-5-3 【延伸知識】將 Browser Performance Testing 運用在其他 Project
6-6 客製化你的 Auto DevOps Pipeline

圖書序言

  • ISBN:9786263332966
  • 規格:平裝 / 416頁 / 17 x 23 x 2.17 cm / 普通級 / 單色印刷 / 二版
  • 齣版地:颱灣

圖書試讀

用戶評價

相關圖書

本站所有內容均為互聯網搜尋引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

© 2025 ttbooks.qciss.net All Rights Reserved. 小特书站 版權所有