Docker 實戰 6堂課:56個實驗動手做,掌握 Linux 容器核心技術(iThome鐵人賽系列書)【平裝】
賴怡玲(小賴)
- 出版商: 博碩
- 出版日期: 2023-10-17
- 定價: $650
- 售價: 7.8 折 $507
- 語言: 繁體中文
- 頁數: 336
- 裝訂: 平裝
- ISBN: 6263336137
- ISBN-13: 9786263336131
- 
    相關分類:
    
      Docker
 
- 
    其他版本:
    
      Docker 實戰 6堂課:56個實驗動手做,掌握 Linux 容器核心技術(iThome鐵人賽系列書)【軟精裝】
 
立即出貨 (庫存 < 8)
買這商品的人也買了...
- 
                
                   人月神話:軟體專案管理之道 (20 週年紀念版)(The Mythical Man-Month: Essays on Software Engineering, Anniversary Edition, 2/e) 人月神話:軟體專案管理之道 (20 週年紀念版)(The Mythical Man-Month: Essays on Software Engineering, Anniversary Edition, 2/e)$480$379
- 
                
                   無瑕的程式碼 - 敏捷軟體開發技巧守則 (Clean Code: A Handbook of Agile Software Craftsmanship) 無瑕的程式碼 - 敏捷軟體開發技巧守則 (Clean Code: A Handbook of Agile Software Craftsmanship)$580$452
- 
                
                   為你自己學 Git 為你自己學 Git$500$425
- 
                
                   無瑕的程式碼-整潔的軟體設計與架構篇 (Clean Architecture: A Craftsman's Guide to Software Structure and Design) 無瑕的程式碼-整潔的軟體設計與架構篇 (Clean Architecture: A Craftsman's Guide to Software Structure and Design)$580$452
- 
                
                   內行人才知道的系統設計面試指南 內行人才知道的系統設計面試指南$580$458
- 
                
                   跟著 Docker 隊長,修練 22天就精通 - 搭配 20小時作者線上教學,無縫接軌 Microservices、Cloud-native、Serverless、DevOps 開發架構 跟著 Docker 隊長,修練 22天就精通 - 搭配 20小時作者線上教學,無縫接軌 Microservices、Cloud-native、Serverless、DevOps 開發架構$880$695
- 
                
                   圖解 Docker & Kubernetes 的知識與使用方法 圖解 Docker & Kubernetes 的知識與使用方法$620$490
- 
                
                   ASP.NET Core 6 實戰守則:超易懂的跨平台開發入門教學 (iT邦幫忙鐵人賽系列書) ASP.NET Core 6 實戰守則:超易懂的跨平台開發入門教學 (iT邦幫忙鐵人賽系列書)$600$468
- 
                
                   30天與 Docker 做好朋友:跟鯨魚先生一同探索開發者的大平台(iT邦幫忙鐵人賽系列書)(修訂版) 30天與 Docker 做好朋友:跟鯨魚先生一同探索開發者的大平台(iT邦幫忙鐵人賽系列書)(修訂版)$600$468
- 
                
                   Google 的軟體工程之道|從程式設計經驗中吸取教訓 (Software Engineering at Google) Google 的軟體工程之道|從程式設計經驗中吸取教訓 (Software Engineering at Google)$880$695
- 
                
                   現代 Linux 學習手冊 (Learning Modern Linux: A Handbook for the Cloud Native Practitioner) 現代 Linux 學習手冊 (Learning Modern Linux: A Handbook for the Cloud Native Practitioner)$580$458
- 
                
                   DevOps 七步大法 - Docker 硬功夫實戰容器 DevOps 七步大法 - Docker 硬功夫實戰容器$880$695
- 
                
                   從異世界歸來發現只剩自己不會 Kubernetes:初心者進入雲端世界的實戰攻略!(iThome鐵人賽系列書)【軟精裝】 從異世界歸來發現只剩自己不會 Kubernetes:初心者進入雲端世界的實戰攻略!(iThome鐵人賽系列書)【軟精裝】$720$562
- 
                
                   Azure DevOps 設計策略與實戰分析:開發工程師從入門到進階完全指南(iThome鐵人賽系列書)【軟精裝】 Azure DevOps 設計策略與實戰分析:開發工程師從入門到進階完全指南(iThome鐵人賽系列書)【軟精裝】$760$593
- 
                
                   產品經理全方位敏捷實踐:從活用 Scrum 到強化 PM 心理素質, 成為 AI 無法取代的產品負責人(iThome鐵人賽系列書)【軟精裝】 產品經理全方位敏捷實踐:從活用 Scrum 到強化 PM 心理素質, 成為 AI 無法取代的產品負責人(iThome鐵人賽系列書)【軟精裝】$700$546
- 
                
                   高效率 Linux 命令列學習手冊 (Efficient Linux at the Command Line: Boost Your Command-Line Skills) 高效率 Linux 命令列學習手冊 (Efficient Linux at the Command Line: Boost Your Command-Line Skills)$580$458
- 
                
                   Staff 工程師之路|獻給個人貢獻者成長與改變的導航指南 (The Staff Engineer's Path) Staff 工程師之路|獻給個人貢獻者成長與改變的導航指南 (The Staff Engineer's Path)$580$458
- 
                
                   那些文件沒有告訴你的 AWS EKS:解析 Kubernetes 背後的奧秘(iThome鐵人賽系列書)【軟精裝】 那些文件沒有告訴你的 AWS EKS:解析 Kubernetes 背後的奧秘(iThome鐵人賽系列書)【軟精裝】$680$530
- 
                
                   從異世界歸來發現只剩自己不會 Kubernetes:初心者進入雲端世界的實戰攻略!(iThome鐵人賽系列書)【平裝】 從異世界歸來發現只剩自己不會 Kubernetes:初心者進入雲端世界的實戰攻略!(iThome鐵人賽系列書)【平裝】$650$507
- 
                
                   圖解 Linux 核心工作原理|透過實作與圖解學習 OS 與硬體的基礎知識【增訂版】 圖解 Linux 核心工作原理|透過實作與圖解學習 OS 與硬體的基礎知識【增訂版】$600$474
- 
                
                   K8S 自學聖經:10大核心模板快速入門【圖解教學】 K8S 自學聖經:10大核心模板快速入門【圖解教學】$790$624
- 
                
                   你的第一本 Linux 入門書:使用 WSL 建立 Linux 軟體開發與部署環境,一次學會 Docker、版本控制、建立 AI 預訓練模型 你的第一本 Linux 入門書:使用 WSL 建立 Linux 軟體開發與部署環境,一次學會 Docker、版本控制、建立 AI 預訓練模型$620$484
- 
                
                   OpenTelemetry 入門指南:建立全面可觀測性架構(iThome鐵人賽系列書)【軟精裝】 OpenTelemetry 入門指南:建立全面可觀測性架構(iThome鐵人賽系列書)【軟精裝】$750$585
- 
                
                   從零開始 OCS Inventory:打造資訊資產管理 × 資安 CVE 漏洞通報(iThome鐵人賽系列書) 從零開始 OCS Inventory:打造資訊資產管理 × 資安 CVE 漏洞通報(iThome鐵人賽系列書)$650$507
- 
                
                   程式設計原來不只有寫 CODE!銜接學校與職場的五堂軟體開發實習課 = Beyond Just Coding: Five Essential Lessons from Classroom to Career in Software Development 程式設計原來不只有寫 CODE!銜接學校與職場的五堂軟體開發實習課 = Beyond Just Coding: Five Essential Lessons from Classroom to Career in Software Development$700$546
商品描述
▃ ▅ ▆ ▇ 佳評如潮!火速再版(平裝版) ▇ ▆ ▅ ▃
★☆★ 榮登銷售排行榜冠軍 TOP 1 ★☆★
- ▍掌握容器原理,除錯更快速!
 ▍跟著實驗操作,帶你告別一知半解,深入掌握 Container!
 
 本書內容改編自第 14 屆 iThome 鐵人賽 DevOps 組的冠軍系列文章《那些關於 Docker 你知道與不知道的事》。本書從啟動 Docker Container 開始,探索 Docker 的底層設計,進而學習 Linux 容器技術及其相關的 Linux 知識,包括 Namespace、Process 與網路等,同時也提供各種動手做實驗,讓你親手驗證讀到的理論與技術。
 
 書中將探討五大主題:
 1 ▶ Docker Container
 2 ▶ Docker Image
 3 ▶ Linux Namespace
 4 ▶ Linux Process 及其與 Docker Container 的關係
 5 ▶ Container 與 Linux 的網路世界
 
 全書提供 56 個動手做實驗,讓讀者能親自驗證學習到的理論,從「會用」進階到「知道」,讓 Docker 容器不再神秘,讓讀者不再心虛。讀者除了能熟悉 Docker,也能同時學習 Linux 相關知識,鞏固作業系統與網路的基本功,提升問題排查的能力,累積往下探索的基礎,讓未來的你也能自己動手挖掘底層技術。
 
 
 四大重點
 
 ☑ 打穩基礎
 層層介紹 Docker 元素,清楚掌握底層原理
 
 ☑ 由淺入深
 從環境建置到容器化,快速部署非難事
 
 ☑ 動手做範例
 每章範例動手玩,加深理論與實力
 
 ☑ 大量圖文解說
 白話文+圖解說明,讓你不再似懂非懂
 
 
 目標讀者
 
 ● 想學習 Docker 或容器化技術
 ● 會 Docker 的基本操作,但對於原理好像似懂非懂,想要深入學習
 ● 想學習更多 Linux,卻不知道該從哪裡開始
 ● 喜歡親自動手驗證的工程師
 ● 想從 Junior 晉升到 Senior 的工程師
 
 
 下載範例程式檔案
 
 本書提供範例程式檔案,以及安裝 Docker 教學說明:
 https://github.com/azole/docker-ironman-2022
 
 
 專業推薦
 
 「無論你是初學者,還是已有一定基礎的工程師,這本書都會是你最好的指南和夥伴。讓我們一起跟隨這位經驗豐富的導師,從「會用」進階到「知道」,探索技術的深邃海洋。」
 ──── Shirney │ AppWorks School 校長
 
 
 「容器生態圈蓬勃發展,我們更需要小賴這本書,帶我們透過自己的雙手掌握那不變的容器技術核心。」
 ──── 葉秉哲(William Yeh) │ 敏捷魔藥師
 
 
 「小賴以深入淺出的方式,帶領讀者進一步探討這些技術。她用生動的文字和清晰的例子,讓你不僅能操作 Docker,而是能夠洞悉其本質。這不僅能讓你在開發過程中更加得心應手,更讓讀者之後對 container 相關技術 debug 的過程變得更加順暢。」
 ──── 顏永富(泳褲) │ Laravel 台灣 / DevOps Taiwan 社群老志工 / 全端工程師
作者簡介
- 賴怡玲(小賴)
 
 工作經驗約 20 年, 從工程師當到技術主管, 待過大、小公司,從金融業到各種新創,台商、外商都有經驗,也自己設立公司過。略懂前端,主要在後端與維運部署,接案時從業務、專案管理、技術團隊管理、前後端開發、部署維運到售後客服無所不包,業界俗稱的一條龍工程師。擅長從兵荒馬亂、資源有限的團隊中做出一些東西,喜歡容器技術、AWS。
 
 擔任過 Laravel Conf、WebConf Taiwan 等議程講者,分享 Serverless 與 Docker 等主題。目前在 AppWorks School 擔任後端班導師,陪伴想要加入軟體開發領域的學員們成長。
 
 【iThome 鐵人賽獲獎】
 🏆 2022 DevOps 組冠軍:《那些關於 Docker 你知道與不知道的事》
目錄大綱
- 致謝
 推薦序 ── Shirney
 推薦序 ── 葉秉哲(William Yeh)
 推薦序 ── 顏永富(泳褲)
 作者序
 前言
 
 第 1 章 實驗環境準備
 1.1 實驗環境
 1.2 安裝步驟
 1.3 實驗環境說明
 觀察 Mac 中給 Docker 使用的虛擬機
 
 第 2 章 建立 Container
 2.1 建立 Container
 實驗 2-1:建立 alpine container
 2.2 查無此人的 process
 實驗 2-2:殺掉 Host 中的 ash process
 2.3 其他 Docker container 指令
 實驗清除
 
 第 3 章 Docker Image
 3.1 Docker Image 初探
 實驗 3-1:觀察 nginx image
 實驗清除
 3.2 什麼是 Image Layer?
 實驗 3-2:自己做出新的一層 layer
 實驗清除
 3.3 來玩一下 Docker Image Layer
 實驗 3-3:修改 UpperDir 中的檔案內容並觀察其變化
 實驗 3-4:修改 UpperDir 中的檔案內容並建立新的 image
 實驗 3-5:在 container 中增加新的檔案並建立新的 image
 實驗清除
 3.4 Docker Image 實驗解惑 - OverlayFS
 實驗 3-6:使用 OverlayFS 來 union mount 檔案夾
 3.5 什麼是 copy-on-write 跟 whiteout?
 實驗 3-7:測試聯合目錄中的檔案
 實驗 3-8:測試聯合目錄中的檔案 2
 實驗清除
 3.6 所以,到底什麼是 Docker Image 呢?
 
 第 4 章 命名空間(Namespaces)
 4.1 什麼是 Namespaces?
 4.2 PID Namespace
 實驗 4-1:手動建立出自己的 namespace
 實驗清除
 4.3 用 clone 來建立新的 PID namespace
 實驗 4-2:用 clone 來建立 PID namespace
 實驗清除
 4.4 Mount Namespace 的坑
 實驗 4-3:不使用 mount-proc 參數
 實驗 4-4:觀察 /proc
 實驗 4-5:建立 Mount namespace
 實驗 4-6:手動掛載 /proc
 4.5 Container 與 Namespaces
 實驗 4-7:從 Host 觀察 container 中的 processes
 實驗 4-8:container 的 namespaces 觀察
 實驗清除
 4.6 前景與背景
 實驗 4-9:以背景模式建立 container
 實驗清除
 4.7 要怎麼「進入」container 裡呢?
 實驗 4-10:驗證 docker container exec 指令
 實驗 4-11:setns 的操作
 實驗清除
 
 第 5 章 Linux 中的 Process
 5.1 認識 Process
 5.2 Process 的族譜
 實驗 5-1:測試 fork API
 5.3 殭屍(zombie)與孤兒(orphan)
 實驗 5-2:parent process 不呼叫 waitpid
 實驗 5-3:parent process 比 child process 先終止
 實驗清除
 5.4 Container 中 PID 1 process 的 parent 是誰呢?
 實驗 5-4:container 中 PID 1 process 的族譜
 5.5 Container 中的 PID 1 process 會負起 init process 的責任嗎?
 實驗 5-5:PR_SET_CHILD_SUBREAPER 的測試
 實驗 5-6:container 中的 PID 1 是否會負起責任?
 5.6 不負責任的 PID 1 process
 實驗 5-7:以 exec 模式建立 container
 實驗 5-8:以 shell 模式建立 container
 5.7 Linux 中的訊號(signal)
 5.8 signal & kill 指令
 實驗 5-9:捕捉訊號(catch signal)
 實驗清除
 5.9 Signal 與 container
 docker container stop
 實驗 5-10:驗證 docker container stop 指令的 signal
 實驗 5-11:PID 1 不正確處理 SIGTERM
 實驗 5-12:docker container stop 與 shell mode
 docker container kill
 實驗 5-13:docker container kill
 docker container rm -f
 5.10 Ubuntu 中的 /bin/sh 怎麼了?
 實驗 5-14:alpine image 的 shell mode
 實驗 5-15:驗證 dash shell
 實驗 5-16:init 參數
 5.11 PID 1 的 process 能被殺掉嗎?
 實驗 5-17:在 exec mode 下 kill container 中的 PID 1 process
 實驗 5-18:在 shell mode 下 kill container 中的 PID 1 process
 
 第 6 章 Container 的網路世界
 6.1 Container 怎麼跟別人溝通的?
 實驗 6-1:Docker network - none
 實驗 6-2:Docker network - host
 實驗 6-3:Docker network - bridge
 實驗 6-4:Docker network - container
 6.2 什麼是 veth pair?
 實驗 6-5:手動建立 veth pair
 實驗清除
 6.3 來過橋吧!
 實驗 6-6:透過 bridge 來連通兩個 network namespace
 實驗 6-7:設定 iptables 讓封包可以過橋
 6.4 能成功出海嗎?
 實驗 6-8:調整 routing table
 6.5 為什麼出不了國呢?
 實驗 6-9:從 ns1 ping 外部網路並錄製網路封包
 6.6 讓我們出國去!
 實驗 6-10:觀察 Host 對外部網路的通信
 實驗 6-11:為 ns1 建立 nat 規則
 實驗 6-12:關掉無條件轉發
 實驗 6-13:為 docker1 調整 FORWARD chain
 6.7 解封國境
 實驗 6-14:測試外部是否可以連進 ns1 中
 實驗 6-15:觀察 Docker 對 iptables 做了什麼
 從外部主機連線至 container
 實驗 6-16:讓 ns1 裡的 server 可以被外部主機連接
 在 Host 透過 private IP 連線至 container
 實驗 6-17:讓 ns1 裡的 server 可以從 Host 透過 private IP 連線
 Host 透過 loopback IP 位址連線至 container
 
 後記




















 
     
     
     
     
     
    