首頁 搜尋 我的知識庫
30天與Docker做好朋友:跟鯨魚先生一同探索開發者的大平台(iT邦幫忙鐵人賽系列書)

30天與Docker做好朋友:跟鯨魚先生一同探索開發者的大平台(iT邦幫忙鐵人賽系列書)

作者: 周建毅 (Miles)
出版社: 博碩
出版日期: 2021/09/23
ISBN-13: 9789864348770
書店 1






內容描述


以開發者為導向的 Docker 新手入門書!
 
  ☛介紹 Docker 如何建置、分享與執行的一條龍服務
  ☛應用 Docker 技術在開發的流程裡
  ☛採用手把手執行指令的方式,來說明 Docker 的各種基礎概念
 
  本書內容改編自第12屆iT邦幫忙鐵人賽 DevOps 組佳作網路系列文章⸺《30天與鯨魚先生做好朋友》。Docker 是目前熱門的 DevOps 工具之一,能用簡單的方法來運行 Container 技術。本書是以開發者初次學習 Docker 的情境所設計的,最終期望讀者能真的在 30 天內了解並應用 Docker 在日常開發,讓開發階段能夠更加順利。
 
  【三大漸進式學習主題】:
  ■ 熟悉 Docker 基礎,了解如何操作 Docker
  Docker 發展至今累積了非常多好用的 Image。學習 Docker 最便捷的方法是多用多看⸺多使用這些 Image,多觀察這些 Image 是如何運行的。本書提供大量的執行範例,讀者可以跟著一起執行指令確認結果,搭配章節的說明,即可更快了解 Docker 運作原理。
 
  ■ 創造 Docker Image,了解如何客製化 Image
  網路上找到的 Image 不滿意嗎?或是根本找不到想要的 Image 嗎?那就自己建一個!本書以一個 Web 服務為範例,說明建置 Image 的過程,也介紹了完整的範例說明該如何將 Image 調整成最佳狀態;獨樂樂不如眾樂樂,建置好的 Image 如何分享給同事或網路上其他鄉民,也是學習Docker 的一大重點。
 
  ■ 深入了解 Docker 執行的原理
  了解如何執行 Container 和建置 Image 後,即可應用在大多數開發場合。在一些複雜的情境裡,則會需要更加基礎的知識,如儲存空間或網路設定等。本書介紹了一些進階設定的方法和範例,讓讀者可以理解 Docker 如何使用硬體資源,進而了解 Container 該如何配置設定與除錯。
 
專業推薦
 
  這是一本書如其人的 Docker 入門書,Miles 以紮(血)實(淚)的實務經驗為本,透過幽默易懂的方式,將自身的經驗轉化為他人容易消化吸收的成長食糧。這本由 Developer 撰寫給 Developers 的 Docker 新手入門書,值得推薦給所有需要立即踏進 Docker 世界的開發者。——陳正瑋(艦長) / DevOps Ta iwan 社群志工 《和艦長一起 30 天玩轉 GitLab(iT邦幫忙鐵人賽系列書)》作者


目錄大綱


01.Docker 介紹
什麼時候會需要 Docker ? 
Docker 環境架設 
驗證安裝 

02.哈囉!世界! 
Docker 架構 
hello world 背後的運作原理 
不使用 docker run 指令 

03.使用 Docker 的指令建置環境
Container 管理小技巧 
使用 port forwarding 開放服務 
使用 Volume 同步檔案 
使用 Network 連結 container 
使用 environment 控制環境變數 

04.Container 實務應用
連接資料庫 
資料庫 server 端 
指令借我用一下 
Docker 上跑就沒問題 
小結 

05.運用 Docker Compose 組合 container
單一 container
多環境測試 
連結多個 container 
連結更多 container 

06.了解 Docker build 指令
Docker image 簡介 
Dockerfile 與 docker bulid 指令
小結 

07.來實際打造 image 吧
初始化 Laravel 
事前準備
Dockerfile 的第一手
設定路徑與原始碼
設定啟動 server 指令 

08.最佳化 Dockerfile
調整 build context
只安裝必要的工具與依賴
活用 cache
精簡 image 
精簡 commit 
使用 Multi-stage Build

09.為各種框架 build image
Phoenix 
Amber 
Rocket
Lapis 

10.分享 image
Docker Hub 
GitHub Container Registry 
使用自架 Private Registry 
其他 private registry 服務 
透過 save / export 分享 image 

11.Docker 如何啟動 process
exec 模式與 shell 模式 
觀察 docker exec 的情況
了解 CMD 與 ENTRYPOINT 
CMD 的設計
ENTRYPOINT 的設計 
純執行指令類型的 image 
服務類型的 image 

12.如何運行多個 process
使用 docker exec 
使用 shell script 
使用 Supervisor 
小結 

13.活用 ENV 與 ARG
ENV 的設計 
ARG 的設計 
ARG 與 ENV 混用 
與 Multi-stage build 合併使用
小結 

14.Volume 進階用法
Volume 概念 
應用 
屬性設定 
Volume driver 
小結 

15.Network 手動配置
Network Drivers 
預設的 Bridge 網路 
自己開一個 bridge 
host 
container 
none
小結 

16.The Twelve-Factor App
Continuous Integration 
The Twelve-Factor App 
A.指令補充說明
B.其他好用的指令


作者介紹


作者簡介
 
周建毅 (Miles)
 
  約十年的 PHP 開發經驗,也是 Laravel 框架的愛好者。自從在 2015 年發現了 Docker,就被它可以複製環境的建置方法所吸引。學習過程當然也踩了不少雷,大多都是因為對作業系統不夠理解,或是環境設定不夠了解造成的,這也是純開發者會比較少接觸的部分。
 
  本著作的目標,正是想寫出能讓開發者很快進入 Docker 世界的教學,使更多開發者能少踩一點雷,並一同享受使用 Docker 所帶來的各種好處。






相關書籍

8051入門:C語言輕鬆學

ESP32 微處理機實習與物聯網應用含AMA Fundamentals Level 先進微控制器應用認證 - 最新版(第三版) - 附MOSME行動學習一點通:學科.診斷.評量.加值

Scikit-learn 詳解與企業應用:機器學習最佳入門與實戰

100張圖搞懂AI人工智慧產業鏈:讓你全面了解AI的技術及運用,無論投資、職場都能領先群倫!