雲端計算教程之容器介紹
好程式設計師雲端計算培訓分享之 容器介紹 : 容器其實是一種沙盒技術。沙盒就是能夠像一個集裝箱一樣,把你的應用" 裝 " 起來的技術。這樣,應用與應用之間,就因為有了邊界而不至於相互干擾;而被裝進集裝箱的應用,也可以被方便地搬來搬去。
問題:容器的本質到底是什麼?
容器的本質是程式。容器映象就是這個系統裡的".exe"安裝包.
.iso映象檔案--->(linux/wind/) docker-----下載images------run------>docker容器-----打包----images---放到其他機器-----run映象------容器
docker ---下載映象imagesc7---jdk,tomcat -----打包成images----匯出來放到其他機器上--run-images---容器
Docker介紹:
Docker是Docker.Inc公司開源的一個基於輕量級虛擬化技術的容器引擎專案,整個專案基於Go語言開發,並遵從Apache 2.0協議。透過分層映象標準化和核心虛擬化技術,Docker使得應用開發者和運維工程師可以以統一的方式跨平臺釋出應用,並且以幾乎沒有額外開銷的情況下提供資源隔離的應用執行環境。
Docker 是一個開源工具,它可以讓建立和管理 Linux 容器變得簡單。**容器就像是輕量級的虛擬機器,並且可以以秒級的速度來啟動或停止。**
官網:docker.com
docker.io ---docker官方庫也叫docker-hub
沒有容器的時候:
1.rd開發產品(需要配置開發環境)lamp
2.測試(需要配置測試環境)
3.op上線(需要線上環境)
開發 測試 運維
有容器之後:
00001. rd開發產品(需要在docker容器裡配置開發環境)
00002.
把容器打包成映象交給運維,運維上線
Docker跟原有的工具區別:
傳統的部署模式是:安裝(包管理工具或者原始碼包編譯)->配置->執行;
Docker的部署模式是:複製->執行。
Docker對伺服器端開發/部署帶來的變化:
方便快速部署
對於部署來說可以極大的減少部署的時間成本和人力成本
Docker支援將應用打包進一個可以移植的容器中,重新定義了應用開發,測試,部署上線的過程,核心理念
是 Build once, Run anywhere
1)標準化應用釋出,docker容器包含了執行環境和可執行程式,可以跨平臺和主機使用;
2)節約時間,快速部署和啟動,VM啟動一般是分鐘級,docker容器啟動是秒級;
3)方便構建基於微服務架構的系統,透過服務編排,更好的松耦合;
4)節約成本,以前一個虛擬機器至少需要幾個G的磁碟空間,docker容器可以減少到MB級;
Docker 優勢:
1、交付物標準化
Docker的標準化交付物稱為"映象",它包含了應用程式及其所依賴的執行環境,大大簡化了應用交付的模式。
2、應用隔離
Docker可以隔離不同應用程式之間的相互影響,但是比虛擬機器開銷更小。總之,容器技術部署速度快,開發、測試更敏捷;提高系統利用率,降低資源成本.
3、一次構建,多次交付
類似於集裝箱的"一次裝箱,多次運輸",Docker映象可以做到"一次構建,多次交付"。
Docker的度量:
Docker是利用容器來實現的一種輕量級的虛擬技術,從而在保證隔離性的同時達到節省資源的目的。Docker的
可移植性可以讓它一次建立,到處執行。Docker的度量可以從以下四個方面進行:
1)隔離性
透過核心的名稱空間來實現的,將容器的程式、網路、訊息、檔案系統和主機名進行隔離。
2)可度量性
Docker主要透過cgroups控制組來控制資源的度量和分配。
3)移植性
Docker利用AUFS來實現對容器的快速更新。
AUFS是一種支援將不同目錄掛載到同一個虛擬檔案系統下的檔案系統,支援對每個目錄的讀寫許可權管理。AUFS具有層
的概念,每一次修改都是在已有的只寫層進行增量修改,修改的內容將形成新的檔案層,不影響原有的層。
4)安全性
安全性可以分為容器內部之間的安全性;容器與託管主機之間的安全性。
容器內部之間的安全性主要是透過名稱空間和cgroups來保證的。
容器與託管主機之間的安全性主要是透過核心能力機制的控制,可以防止Docker非法入侵託管主機。
Docker容器使用AUFS作為檔案系統,有如下優勢:
1)節省儲存空間
多個容器可以共享同一個基礎映象儲存。
2)快速部署
3)升級方便
升級一個基礎映象即可影響到所有基於它的容器。需要注意已經在執行的docker容器不受影響
容器和 VM 的主要區別:
表面區別:
容器佔用體積小,虛擬機器佔用體積大
隔離性:容器提供了基於程式的隔離,而虛擬機器提供了資源的完全隔離。
啟動速度:虛擬機器可能需要一分鐘來啟動,而容器只需要一秒鐘或更短。
容器使用宿主作業系統的核心,而虛擬機器使用獨立的核心。Docker 的侷限性之一是,它只能用在64位的作業系統上。
本質區別:
容器是被隔離的程式
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69913864/viewspace-2694995/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 簡單介紹雲端計算的容器技術
- 雲端計算開發學習教程,簡單介紹雲端計算
- 雲端計算日常運用場景介紹!
- 靜態路由介紹(雲端計算隨筆)路由
- 雲端計算簡介+雲端計算建站平臺
- 雲端計算中容器的功能
- 主流雲端計算廠商產品服務介紹
- [譯] 無容器下的雲端計算
- 探索雲端計算容器底層之Cgroup
- 邊緣雲端計算簡介
- Hadoop 簡介 雲端計算Hadoop
- 好程式設計師雲端計算培訓分享雲端計算必會的Docker容器命令程式設計師Docker
- Java教程之RabbitMQ介紹JavaMQ
- 【原創】探索雲端計算容器底層之Cgroup
- Django基礎教程之介紹Django
- Apache、NGINX、Tomcat的優缺點介紹!Linux雲端計算學習ApacheNginxTomcatLinux
- 從雲端計算到容器到容器雲
- 《雲端計算》)——超越桌面:雲端計算導論
- Linux雲端計算-01_介紹以及Linux作業系統安裝Linux作業系統
- ArduinoYun教程之ArduinoYun硬體介紹UI
- 雲端計算
- 計算機記憶體管理介紹計算機記憶體
- SAP FI利息計算介紹和配置
- gitbook 入門教程之外掛介紹Git
- Bootstrap速學教程之簡要介紹boot
- 【雲端計算小知識】什麼是雲端計算?雲端計算特點是什麼?
- 雲端儲存產品介紹
- 什麼叫雲端計算?雲端計算通俗解釋
- PaaS雲端計算平臺,雲端計算程式開發
- 容器技術Docker雲端計算實戰 映象操作大總結Docker
- 容器技術和Docker介紹Docker
- C#容器類,效能介紹C#
- 簡單介紹雲端計算可觀察性的五個關鍵和新興趨勢
- 雲端計算安全
- 雲端計算薦
- 邊緣計算與雲端計算
- 混合雲端計算vs霧計算
- 什麼叫做雲端計算?學習雲端計算先要理解