一、Docker簡介
簡單一句話: Docker 是一個便攜的應用容器。
網上鋪天蓋地的是這么說的:
(1) Docker 容器的啟動可以在秒級實現,這相比傳統的虛擬機方式要快得多。
(2) Docker 對系統資源的利用率很高,一台主機上可以同時運行數千個 Docker 容器。
(3) 更快速的交付和部署、更輕松的遷移和擴展.
通俗解釋:
Docker的思想來自於集裝箱,集裝箱解決了什么問題?在一艘大船上,可以把貨物規整的擺放起來。並且各種各樣的貨物被集裝箱標准化了,集裝箱和集裝箱之間不會
互相影響。只要這些貨物在集裝箱里封裝的好好的,那我就可以用一艘大船把他們都運走。docker就是類似的理念。
1、不同的應用程序可能會有不同的應用環境,比如.net環境和php環境依賴的軟件就不一樣,如果把他們依賴的軟件都安裝在一個服務器上還可能會造成一些沖突。
常規來講,我們可以在服務器上創建不同的虛擬機,但是虛擬機開銷比較高。docker可以實現虛擬機隔離應用環境的功能,並且開銷比虛擬機小。
2、你開發軟件的時候用的是Ubuntu,但是運維管理的都是centos,運這個時候就會遇到一些Ubuntu轉centos的問題,比如:有個特殊版本的數據庫,只有Ubuntu支持
centos不支持,這時候要是有docker你就可以把開發環境直接封裝轉移給運維,運維直接部署你給他的docker就可以了。而且部署速度快。
3、在服務器負載方面,如果你單獨開一個虛擬機,那么虛擬機會占用空閑內存的,docker部署的話,這些內存就會利用起來。總之docker就是集裝箱原理。
Docker從1.13版本之后采用時間線的方式作為版本號,分為社區版CE和企業版EE。
社區版是免費提供給個人開發者和小型團體使用的,企業版會提供額外的收費服務,比如經過官方測試認證過的基礎設施、容器、插件等。
社區版按照stable和edge兩種方式發布,每個季度更新stable版本,如17.06,17.09;每個月份更新edge版本,如17.09,17.10。
一、安裝docker
1、Docker 要求 CentOS 系統的內核版本高於 3.10 ,查看本頁面的前提條件來驗證你的CentOS 版本是否支持 Docker 。
通過 uname -r 命令查看你當前的內核版本
$ uname -r
2、使用 root
權限登錄 Centos。確保 yum 包更新到最新。
$ sudo yum update
3、卸載舊版本(如果安裝過舊版本的話)
$ sudo yum remove docker docker-common docker-selinux docker-engine
4、安裝需要的軟件包, yum-util 提供yum-config-manager功能,另外兩個是devicemapper驅動依賴的
$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2
5、設置yum源
$ sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
6、可以查看所有倉庫中所有docker版本,並選擇特定版本安裝
$ yum list docker-ce --showduplicates | sort -r
7、安裝docker
$ sudo yum install docker-ce #由於repo中默認只開啟stable倉庫,故這里安裝的是最新穩定版17.12.0 $ sudo yum install <FQPN> # 例如:sudo yum install docker-ce-17.12.0.ce
8、啟動並加入開機啟動
$ sudo systemctl start docker
$ sudo systemctl enable docker
9、驗證安裝是否成功(有client和service兩部分表示docker安裝啟動都成功了)
$ docker version