Docker實戰6堂課:56個實驗動手做, 掌握Linux容器核心技術

點閱:13

其他題名:Docker實戰六堂課 56個實驗動手做, 掌握Linux容器核心技術 56個實驗動手做掌握Linux容器核心技術 五十六個實驗動手做掌握Linux容器核心技術

作者:賴怡玲(小賴)著

出版年:2023

出版社:博碩文化

出版地:臺北市

集叢名:iThome鐵人賽

格式:EPUB 版式

頁數:338

ISBN:9786263335769

EISBN:9786263336575 EPUB; 9786263336568 PDF

分類:資管網通  

掌握容器原理,除錯更快速!
跟著實驗操作,帶你告別一知半解,深入了解 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 教學說明: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 你知道與不知道的事》
  • 致謝
  • 推薦序
  • 作者序
  • 前言
  • 第 1 章 實驗環境準備
  • 1.1 實驗環境
  • 1.2 安裝步驟
  • 1.3 實驗環境說明
  • 第 2 章 建立Container
  • 2.1 建立Container
  • 2.2 查無此人的process
  • 2.3 其他Docker container指令
  • 第 3 章 Docker Image
  • 3.1 Docker Image初探
  • 3.2 什麼是Image Layer?
  • 3.3 來玩一下Docker Image Layer
  • 3.4 Docker Image實驗解惑 - OverlayFS
  • 3.5 什麼是copy-on-write跟whiteout?
  • 3.6 所以,到底什麼是Docker Image呢?
  • 第 4 章 命名空間(Namespaces)
  • 4.1 什麼是Namespaces?
  • 4.2 PID Namespace
  • 4.3 用clone來建立新的PID namespace
  • 4.4 Mount Namespace的坑
  • 4.5 Container與Namespaces
  • 4.6 前景與背景
  • 4.7 要怎麼「進入」container裡呢?
  • 第 5 章 Linux中的Process
  • 5.1 認識Process
  • 5.2 Process的族譜
  • 5.3 殭屍(zombie)與孤兒(orphan)
  • 5.4 Container中PID 1 process的parent是誰呢?
  • 5.5 Container中的PID 1 process會負起init process的責任嗎?
  • 5.6 不負責任的PID 1 process
  • 5.7 Linux中的訊號(signal)
  • 5.8 signal & kill指令
  • 5.9 signal與container
  • 5.10 Ubuntu中的/bin/sh怎麼了?
  • 5.11 PID 1的process能被殺掉嗎?
  • 第 6 章 Container的網路世界
  • 6.1 Container怎麼跟別人溝通的?
  • 6.2 什麼是veth pair?
  • 6.3 來過橋吧!
  • 6.4 能成功出海嗎?
  • 6.5 為什麼出不了國呢?
  • 6.6 讓我們出國去!
  • 6.7 解封國境
同書類書籍