什么是Docker
????????Docker 屬于 Linux 容器的一種封裝驰吓,提供簡(jiǎn)單易用的容器使用接口系奉。它是目前最流行的 Linux 容器解決方案。Docker 將應(yīng)用程序與該程序的依賴翁涤,打包在一個(gè)文件里面葵礼。運(yùn)行這個(gè)文件,就會(huì)生成一個(gè)虛擬容器扔涧。程序在這個(gè)虛擬容器里運(yùn)行枯夜,就好像在真實(shí)的物理機(jī)上運(yùn)行一樣艰山。有了 Docker,就不用擔(dān)心環(huán)境問題摔吏。
總體來說舔腾,Docker 的接口相當(dāng)簡(jiǎn)單搂擦,用戶可以方便地創(chuàng)建和使用容器,把自己的應(yīng)用放入容器扳还。容器還可以進(jìn)行版本管理氨距、復(fù)制棘劣、分享、修改首昔,就像管理普通的代碼一樣勒奇。
Docker應(yīng)用場(chǎng)景
????????Web應(yīng)用的自動(dòng)化打包和發(fā)布巧骚。自動(dòng)化測(cè)試和持續(xù)集成格二、發(fā)布顶猜。在服務(wù)型環(huán)境中部署和調(diào)整數(shù)據(jù)庫(kù)或其他的后臺(tái)應(yīng)用痘括。從頭編譯或者擴(kuò)展現(xiàn)有的OpenShift或Cloud Foundry平臺(tái)來搭建自己的PaaS環(huán)境。
Docker的優(yōu)點(diǎn)
? ??????1、簡(jiǎn)化程序:Docker讓開發(fā)者可以打包他們的應(yīng)用以及依賴包到一個(gè)可移植的容器中驰后,然后發(fā)布到任何流行的 Linux 機(jī)器上矗愧,便可以實(shí)現(xiàn)虛擬化。Docker改變了虛擬化的方式夜涕,使開發(fā)者可以直接將自己的成果放入Docker中進(jìn)行管理属愤。方便快捷已經(jīng)是 Docker的最大優(yōu)勢(shì),過去需要用數(shù)天乃至數(shù)周的 任務(wù)驾胆,在Docker容器的處理下贱呐,只需要數(shù)秒就能完成。
? ??????2驳阎、避免選擇恐懼癥:如果你有選擇恐懼癥呵晚,還是資深患者。Docker幫你 打包你的糾結(jié)劣纲!比如 Docker 鏡像癞季;Docker 鏡像中包含了運(yùn)行環(huán)境和配置,所以 Docker 可以簡(jiǎn)化部署多種應(yīng)用實(shí)例工作志于。比如 Web 應(yīng)用、后臺(tái)應(yīng)用伺绽、數(shù)據(jù)庫(kù)應(yīng)用奈应、大數(shù)據(jù)應(yīng)用比如 Hadoop 集群购披、消息隊(duì)列等等都可以打包成一個(gè)鏡像部署刚陡。
? ??????3、節(jié)省開支:一方面筐乳,云計(jì)算時(shí)代到來蝙云,使開發(fā)者不必為了追求效果而配置高額的硬件,Docker改變了高性能必然高價(jià)格的思維定勢(shì)匀泊。Docker 與云的結(jié)合朵你,讓云空間得到更充分的利用抡医。不僅解決了硬件管理的問題,也改變了虛擬化的方式大脉。
相關(guān)連接
Docker官網(wǎng):http://www.docker.com
Github Docker源碼:https://github.com/docker/docker
Docker架構(gòu)
????Docker使用客戶端-服務(wù)器 (C/S) 架構(gòu)模式镰矿,使用遠(yuǎn)程API來管理和創(chuàng)建Docker容器俘种。Docker容器通過 Docker 鏡像來創(chuàng)建绝淡。容器與鏡像的關(guān)系類似于面向?qū)ο缶幊讨械膶?duì)象與類
Docker鏡像(Images)Docker鏡像是用于創(chuàng)建 Docker 容器的模板牢酵。
Docker容器(Container)容器是獨(dú)立運(yùn)行的一個(gè)或一組應(yīng)用馍乙。
Docker客戶端(Client)Docker客戶端通過命令行或者其他工具使用 Docker API (https://docs.docker.com/reference/api/docker_remote_api)與 Docker 的守護(hù)進(jìn)程通信丝格。
Docker主機(jī)(Host)一個(gè)物理或者虛擬的機(jī)器用于執(zhí)行Docker 守護(hù)進(jìn)程和容器。
Docker倉(cāng)庫(kù)(Registry)Docker倉(cāng)庫(kù)用來保存鏡像铁追,可以理解為代碼控制中的代碼倉(cāng)庫(kù)茫船。
Docker Hub(https://hub.docker.com)提供了龐大的鏡像集合供使用算谈。
Docker MachineDocker Machine是一個(gè)簡(jiǎn)化Docker安裝的命令行工具料滥,通過一個(gè)簡(jiǎn)單的命令行即可在相應(yīng)的平臺(tái)上安裝Docker葵腹,比如VirtualBox、 Digital Ocean鲸匿、Microsoft Azure阻肩。
Docker 安裝
????建議在linux環(huán)境下安裝Docker烤惊,window環(huán)境搭建比較復(fù)雜且容易出錯(cuò)
? ?使用yum安裝(CentOS 7下)Docker要求 CentOS 系統(tǒng)的內(nèi)核版本高于 3.10 柒室,查看本頁(yè)面的前提條件來驗(yàn)證你的CentOS 版本是否支持 Docker 。
通過uname -r命令查看你當(dāng)前的內(nèi)核版本
?uname -r 3.10.0-327.el7.x86_64
?yum -y install docker-io
service docker start
其他安裝方式: