Docker 入門與實戰

3 / 2
  • 語言:繁體中文
  • ISBN:9789863476580
  • 出版日期:2015/05/27

認識最夯的虛擬化技術
在雲端運算時代,開發者將應用轉移到雲端已經解決了硬體管理的問題,然而軟體配置和管理相關的問題依然存在。Docker的出現正好能幫助軟體開發人員,嘗試新的軟體管理方法來解決這個問題。藉由掌握Docker,開發人員便可享受先進的自動化運維理念和工具,無需運維人員介入,即可順利運行於各種執行環境。

本書分為三大部分:Docker入門、實戰案例和進階議題。第一部分(第1~8章)介紹Docker與虛擬化技術的基本概念,包括安裝、鏡像、容器、倉庫、資料管理等;第二部分(第9~17章)通過案例介紹Docker的應用方法,包括與各種作業系統平臺、SSH服務的鏡像、Web伺服器與應用、資料庫的應用、各類程式設計語言的介面、私有倉庫等;第三部分(第18~21章)是一些進階議題,如Docker核心技術、安全、進階網路配置、相關專案等。

本書從基本原理開始入手,深入淺出地講解Docker的構建與操作,可協助您快速上手並了解如何應用Docker。

<章節目錄>

第一篇 Docker入門
第1章 認識Docker
第2章 Docker的基本概念和安裝
第3章 映像檔(Image)
第4章 容器(Container)
第5章 倉庫(Repository)
第6章 資料管理
第7章 基礎網路設定
第8章 使用Dockerfile建立映像檔

第二篇 實戰案例
第9章作業系統
第10章建立支援SSH服務的映像檔
第11章Web伺服器與應用
第12章資料庫應用
第13章程式語言設計
第14章使用私有倉庫
第15章建構Docker容器叢集
第16章在Azure上使用Docker
第17章Docker實踐之道

第三篇 進階議題
第18章Docker核心技術
第19章Docker安全
第20章進階網路設定
第21章Docker相關專案

<序>

Docker於2013年發表,Docker.Taipei社群於2013年底由本人跟Willy Kuo發起,並陸續有Carl Su、Kd Tsai及凌若虛加入。感謝酷學園的Netman及鳥哥前輩們向碁峰資訊推薦晚輩,得以有此機會審閱。期間獲邀2014年iThome Container Summit 技術高峰會,謝謝吳其勳總編和王宏仁主編舉辦並推廣Docker這套革命性的軟體工具。

當時接觸Docker就深感此工具就算不是Silver Bullet,也是Copper Bullet,為何呢?IT人共同的痛,就是花非常多的時間在排除系統環境問題,雖然虛擬化技術看似解決這問題,但仍無法跨越雲端平台和公私有雲的虛擬機轉移,雖然可透過Puppet、Chef和Ansible等CM工具來建置一致性虛擬主機環境,但速度仍無法跟Docker相比擬,加上開放策略的Docker Hub與類似Git的操作功能,快速擄獲DevOps人員的目光。也正因pull/push的便捷,Docker Hub累積非常多各式各樣的映像檔,甚至連ARM架構的Raspberry Pi作業系統也有,這可縮短IT人員的學習時間,直接切入核心軟體,省去安裝設定等枝微末節的「Dirty Jobs」,docker pull後馬上就可使用。

相同地,正因為容器化隔離與平台獨立等特性(台灣十大電腦高手葉秉哲前輩便以12因子來分析Docker成功的關鍵,在此感謝他對社群的不吝指導和分享),讓軟體開發從撰寫程式碼開始就可利用Docker,達到開發、測試、上線系統環境完全一致,甚至結合持續整合軟體,讓原本自動化佈署的流程問題更少且更快完成。

開源精神讓Linux成為主要的作業系統,開源精神讓Arduino、Raspberry Pi等開放硬體成為IoT的最後一哩,現在開源精神要讓系統架構更加透明,Docker扮演著積木的角色,任何人都可閱讀Dockerfile,都可使用Docker Hub映像檔,進而修改並快速解決問題,甚至建置出整個資訊系統,終於軟體工程也可慢慢追上建築工程,擺脫Matrix Hell的困境。

此書從虛擬化的前世今生、Linux 系統面、網路基礎、主流程式語言(PHP、Perl、Python、Java、GCC/LLVM/Clang、Ruby、JavaScript、Go)和其支援的眾多Web 框架,簡直就是一部計算機史詩了,謝謝碁峰資訊引進這本好書讓台灣資訊人員得以一窺Docker的奧秘。

    還沒有人寫書評喔,快來寫第一篇書評吧!

會員中心