By Stanley
前言
Docker是近年來很夯的一項虛擬化技術,許多知名企業都有使用它來執行需要虛擬化的業務,所以這次就讓小編來簡單介紹下Docker的特色及受人愛戴的原因吧!
何為Docker,它的優點是什麼?
Docker起源於2013年,其技術與名聲隨著時間逐漸發展蓬勃,有別於常見的VirtualBox、VMware等虛擬機器軟體,Docker採用的是較為輕量的虛擬化技術,這裡直接放上官方所提供的圖片來幫助說明:
可以看到Docker不同於虛擬機以作業系統(Operating System)為中心,而是改用應用程式(Application)做為中心進行虛擬化,少了作業系統讓Docker在虛擬化所占用的空間較小,而它的優點還不僅如此,同下條列:
1. 在啟動速度方面,由於不需要再開啟新的作業系統,因此速度遠勝虛擬機。
2. 執行效率,接近於原生。
3. 相較於常見的虛擬機軟體,建置與複製相同環境所需要的時間少了許多。
4. 遷移時,由於是將整個執行所需環境打包起來,所以只要在目標系統裝上Docker再將打包好的物件放上去即可運行,而不必擔心環境不同。
簡而言之,Docker與傳統虛擬機的最大差異就是在於速度,這也是近幾年Docker熱門起來的原因之一,當受限於資源環境時,Docker絕對是你最佳的選擇。
Docker的三個概念
對於入門的初學者,這裡要先知道Docker的生命週期,基本上涵蓋了下面三個名詞:
- Image(映像檔)
- Container(容器)
- Repository(倉庫)
Image可以簡單想像為虛擬機上的作業系統,是用來建立Container所需的應用程式與相關環境,除了能從官方下載外,也可將自己建立的Container或應用程式打包成Image。
Container則是透過Image所建立起來用於實作的平台,可以想成是一個虛擬機。執行業務所需的操作便是在其之中進行,每個Container的環境皆是互相隔離開的。
Repository是用於存放Images的場所,例如Docker Hub便是由官方所開設的公開線上倉庫,但要是不希望自己的Image被他人所存取,也可以自己建立私人的倉庫供個人以及業務夥伴的使用。
Docker的應用
正如前言所提及的,許多企業亦有使用Docker的案例,例如Visa曾大量投資金錢在虛擬化後,仍無法取得滿意的使用效率,且在停機維護時所耗費的時間也過於長久;後來Visa將兩個關鍵的應用程式重建在Docker並運行後,僅過了六個月,其效能不但獲得了提升,且應用程式的擴展性還提高了十倍以上。
如同上述所提,Docker在建置環境的效率是大家有目共睹的,使用者僅需要將包含所需要應用程式的Container打包後,即可在其他環境迅速地部署並建立起可用的環境。在資安方面,安全人員常需要建立模擬弱點環境進行測試,或是因作業環境而改變操作設備時所需要,所以Docker便是優良選擇之一。
結語
以上是小編帶來的簡單介紹,小編在這邊稍微地簡介了Docker的特色與優勢,應用的範例不侷限在金融、資安方面,Docker功能的可延伸性是極其龐大的,所謂時間就是金錢,而Docker毫無疑問能節省大量的時間,此外其應用更是各產業的一大趨勢,因此若是對其有興趣的話不免考慮嘗試看看。
Reference
Docker 基本教學 – 從無到有 Docker-Beginners-Guide 教你用 Docker 建立 Django + PostgreSQL
《Docker —— 從入門到實踐》正體中文版
Enterprise Container Platform
Visa Use Case with Docker Enterprise
What is a Container