Docker學習總結(一)

《認識Docker》sql

 不按期更新~~~~~~~docker

歷史區別:shell

13年以前:網絡大多使用"協議棧堆疊"的形式進行開發,須要部署單一專有的服務器進行操做。包括(中間件,運行時環境,操做系統,硬件環境,單一專有的服務器)。ubuntu

如今:使用拆分模塊的方式,將須要運用的模塊進行組合,而後運行在(公共雲,我的電腦,測試服務器等),達到跨平臺輕鬆遷移數據的目的。安全

 

 

*作到如今這樣的功能的是容器」:服務器

*容器:輕量級虛擬技術,是基於操做系統的虛擬技術(DockerSolaris ZonesBSD jailsOpen VZLXC),表明着操做系統和用戶空間低層進行資源共享,共用一個系統內核,而且能夠在主機間遷移,具有root權限,可運程,可備份,回滾的一種虛擬技術。網絡

*優勢:效率更高,資源佔用更小,管理更加便捷(同一系列操做系統中)。架構

*缺點:靈活性,安全性,配置共享方面有所欠缺。框架

*Docker能夠當作將數據,操做等進行分門別類而後經過容器引擎(盒子)進行傳輸到我的電腦,公共雲等設備上。工具

 

 

*容器&虛擬機區別:

 

 

*Docker組件(核心):鏡像、容器、庫。

*採用C/S架構:客戶端(執行程序)經過命令行和API形式和守候程序(提供Docker服務)進行通信。

 

 

*鏡像:一個只讀的靜態模板(框架體系);包含環境和應用執行代碼(框架語言);採用分層機制。將新增數據經過聯合文件系統附加在原基礎上。

*容器:一個運行時環境,是鏡像的運行狀態,是鏡像執行的一種動態表現。

*庫:使用註冊服務器(共有的or私有的)存儲和共享用戶的鏡像,是某個特定用戶存儲鏡像的目錄。

 

 

*Docker特性

*隔離性:libcontainer(默認容器)=>內核命名空間。

*安全性:內部(cgroups| 容器和宿主主機(內核能力機制)。

*可度量性:cgroups(控制組)資源度量和分配(用戶)。

*移植性:AUFS(快速更新)層的概念。

-----使用AUFS做爲Docker容器的文件系統,提供的好處:

 

 

*Docker優勢(比較LXC):

*跨平臺可移植性:按統一標準打包(鏡像中),可傳播。

*面向應用:優化部署應用(設計哲學)→API,接口及文檔(體現)。

*版本控制:追蹤、查詢、記錄版本信息(應用程序更改史)和回滾版本等

*組件複用:組件式搭建(基礎鏡像)→Python(運行環境) | postgreasql(基礎鏡像)

*共享性:公共的註冊服務器(可免費下載源碼)。

安裝注意:

 

 

(一)Ubuntu下的安裝

Docker支持如下版本的Ubuntu系統: Ubuntu Trusty 14.04Ubuntu Precise 12.04Ubuntu Raring

13.04 Saucy 13.10。這裏以Ubuntu Trusty 14.04(LTS)64位)爲例進行介紹。

Ubuntu Trusty的內核是3.13.0,在這個系統下安裝時默認的Docker安裝包是0.9.1

首先,運行如下命令進行安裝:

$ sudo apt-get update

$ sudo apt-get install docker.io

而後重啓僞終端便可生效。

若是想安裝最新的Docker,首先你須要確認你的 apt 是否支持https,若是不支持,則需經過

以下命令進行安裝:

$sudo apt-get update

$sudo apt-get install apt-transport-https

而後將Docker庫的公鑰加入到本地 apt 中:

$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80

--recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9

再將安裝源加入到 apt 源中,並更新和安裝:

$ sudo sh -c "echo deb https://get.docker.com/ubuntu docker main\

> /etc/apt/sources.list.d/docker.list"

$ sudo apt-get update

$ sudo apt-get install lxc-docker

爲了驗證Docker是否安裝成功,能夠運行以下命令:

$ sudo docker info

(二) Red Hat下的安裝

紅帽系列主要有紅帽企業版 Linux 6、紅帽企業版 Linux 7Fedora

1. 紅帽企業版Linux 7RHEL7

紅帽企業版Linux 7RHEL7) 中已經默認加入了Docker,它位於附加頻道中。安裝Docker

時,首先要啓用附加頻道,相關命令以下:

$ sudo subscription-manager repos --enable=rhel-7-server-extras-rpms

而後進行安裝,相關命令以下:

$ sudo yum install docker

2. 紅帽企業版Linux 6RHEL6

首先,你要保證本身的紅帽是6.5以上的,內核版本在2.6.32-431以上。

在紅帽企業版Linux 6CentOS 6中,咱們首先須要安裝EPEL包庫,而在Fedora上卻不用。

對於不一樣的平臺,一些包的命名和版本也不盡相同。

安裝EPEL的命令:

$ sudo rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

而後安裝Docker

$ sudo yum -y install docker-io

3. Fedora上的安裝

Fedora 19上安裝Docker的命令以下:

$ sudo yum -y install docker-io

Fedora 20上安裝Docker的命令以下:

$ sudo yum -y install docker

4. 在紅帽系列中啓動Docker後臺

安裝好以後,咱們就能夠啓動Docker的後臺服務了。

RHEL 6CentOS 6中,能夠經過以下命令來啓動:

$ sudo service docker start

咱們還可讓Docker服務開機啓動:

$ sudo service docker enable

RHEL 7Fedora系統中,則是:

$ sudo systemctl start docker

開機啓動是:

$ sudo systemctl enable docker

咱們能夠經過以下命令來確認Docker是否已經安裝成功:

$ sudo docker info

Containers: 13

Images: 22

Storage Driver: aufs

Root Dir: /var/lib/docker/aufs

Dirs: 48

Execution Driver: native-0.2

Kernel Version: 3.13.0-24-generic

Operating System: Ubuntu 14.04 LTS

WARNING: No swap limit support

 

(三)OS X下的安裝

由於Docker引擎採用的是Linux的內核和內核特性,若是須要在OS X上運行它,則須要一個虛擬機。Docker已經給咱們提供了一種簡潔方法,那就是利用Boot2Docker工具來安裝虛擬機和

配置Docker服務。這裏的虛擬機指的是VirtualBox

首先, 能夠去GitHub上下載最新的Boot2Docker。 在編寫這本書的時候, 其最新版本是v1.3.2

雙擊下載完的安裝包,將會自動安裝,如圖1-9所示。安裝的內容包含VirtualBox虛擬機、

DockerBoot2Docker管理工具。

 

 

安裝完成以後,你能夠在OS X應用文件夾中找到Boot2Docker。直接雙擊來啓動它,

或者採用以下命令行的方式:

$ boot2docker init

$ boot2docker start

$ $(boot2docker shellinit)

而後在終端能夠驗證Docker是否成功安裝:

$ docker info

Containers: 13

Images: 22

Storage Driver: aufs

...

至此,OS X下的Docker就安裝好了。

Ps:該文章經過我的閱讀相關書籍,進行整理學習筆記~閱讀書籍的原文做者,見諒~

--------------<我的原創|轉載請註明'逗子'&原文連接  |  新手適用,大牛勿噴>-------------------

相關文章
相關標籤/搜索