Linux環境下的Docker的安裝和部署、學習-一


CentOS Docker 安裝
Docker支持以下的CentOS版本:
CentOS 7 (64-bit)
CentOS 6.5 (64-bit) 或更高的版本
 
前提條件
目前,CentOS 僅發行版本中的內核支持 Docker。
Docker 運行在 CentOS 7 上,要求系統為64位、系統內核版本為 3.10 以上。
Docker 運行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系統為64位、系統內核版本為 2.6.32-431 或者更高版本。
 
查看自己的內核
uname命令用於打印當前系統相關信息(內核版本號、硬件架構、主機名稱和操作系統類型等)。


查看已安裝的CentOS版本信息(CentOS6.8有,CentOS7無該命令)

 

Docker的架構圖

 

 

 

 Centos6.8 安裝Docker

1、Docker使用EPEL發布,RHEL系的OS首先要確保已經持有EPEL倉庫,否則先檢查OS的版本,然后安裝相應的EPEL包。
yum install -y epel-release 2、yum install -y docker-io 3、安裝后的配置文件: /etc/sysconfig/docker 4、啟動Docker后台服務: service docker start 5、docker version 驗證

CentOS7安裝Docker

安裝步驟:
1、官網中文安裝參考手冊
https://docs.docker-cn.com/engine/installation/linux/docker-ce/centos/#prerequisites

2、確定你是CentOS7及以上版本
cat /etc/redhat-release

3、yum安裝gcc相關
yum -y install gcc
yum -y install gcc-c++

4、卸載舊版本
yum -y remove docker docker-common docker-selinux docker-engine

yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine

5、安裝需要的軟件包
yum install -y yum-utils device-mapper-persistent-data lvm2

6、設置stable鏡像倉庫
大坑:
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
推薦
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

7、更新yum軟件包索引
yum makecache fast

8、安裝DOCKER CE
yum -y install docker-ce

9、啟動docker
systemctl start docker

10、測試
docker version
docker run hello-world

11、配置鏡像加速
mkdir -p /etc/docker
vim  /etc/docker/daemon.json
systemctl daemon-reload
systemctl restart docker

12、卸載
systemctl stop docker 
yum -y remove docker-ce
rm -rf /var/lib/docker

 

 永遠的HelloWorld

阿里雲鏡像加速
是什么
https://dev.aliyun.com/search.html


注冊一個屬於自己的阿里雲賬戶(可復用淘寶賬號)


獲得加速器地址連接
登陸阿里雲開發者平台
獲取加速器地址


配置本機Docker運行鏡像加速器

鑒於國內網絡問題,后續拉取 Docker 鏡像十分緩慢,我們可以需要配置加速器來解決,
我使用的是阿里雲的本人自己賬號的鏡像地址(需要自己注冊有一個屬於你自己的):   https://xxxx.mirror.aliyuncs.com
 
*  vim /etc/sysconfig/docker
   將獲得的自己賬戶下的阿里雲加速地址配置進
other_args="--registry-mirror=https://你自己的賬號加速信息.mirror.aliyuncs.com"



重新啟動Docker后台服務:service docker restart
Linux 系統下配置完加速器需要檢查是否生效
 
如果從結果中看到了配置的--registry-mirror參數說明配置成功,如下所示:
 

啟動Docker后台容器(測試運行 hello-world)

docker run hello-world

 

Docker是一個Client-Server結構的系統,Docker守護進程運行在主機上, 然后通過Socket連接從客戶端訪問,守護進程從客戶端接受命令並管理運行在主機上的容器。 容器,是一個運行時環境,就是我們前面說到的集裝箱。

 

為什么Docker比較比VM快

(1)docker有着比虛擬機更少的抽象層。由亍docker不需要Hypervisor實現硬件資源虛擬化,運行在docker容器上的程序直接使用的都是實際物理機的硬件資源。因此在CPU、內存利用率上docker將會在效率上有明顯優勢。
 
(2)docker利用的是宿主機的內核,而不需要Guest OS。因此,當新建一個容器時,docker不需要和虛擬機一樣重新加載一個操作系統內核。仍而避免引尋、加載操作系統內核返個比較費時費資源的過程,當新建一個虛擬機時,虛擬機軟件需要加載Guest OS,返個新建過程是分鍾級別的。而docker由於直接利用宿主機的操作系統,則省略了返個過程,因此新建一個docker容器只需要幾秒鍾。
 
 
 DockerFile解析

是什么

Dockerfile是用來構建Docker鏡像的構建文件,是由一系列命令和參數構成的腳本。

構建三步驟

編寫Dockerfile文件

docker build

docker run

文件什么樣???

以我們熟悉的CentOS為例 :https://hub.docker.com/_/centos/

DockerFile構建過程解析

1、Dockerfile內容基礎知識

1:每條保留字指令都必須為大寫字母且后面要跟隨至少一個參數

2:指令按照從上到下,順序執行

3:#表示注釋

4:每條指令都會創建一個新的鏡像層,並對鏡像進行提交

Docker執行Dockerfile的大致流程

(1)docker從基礎鏡像運行一個容器

(2)執行一條指令並對容器作出修改

(3)執行類似docker commit的操作提交一個新的鏡像層

(4)docker再基於剛提交的鏡像運行一個新容器

(5)執行dockerfile中的下一條指令直到所有指令都執行完成

 

小結:

 

從應用軟件的角度來看,Dockerfile、Docker鏡像與Docker容器分別代表軟件的三個不同階段,
*  Dockerfile是軟件的原材料
*  Docker鏡像是軟件的交付品
*  Docker容器則可以認為是軟件的運行態。
Dockerfile面向開發,Docker鏡像成為交付標准,Docker容器則涉及部署與運維,三者缺一不可,合力充當Docker體系的基石。

1 Dockerfile,需要定義一個Dockerfile,Dockerfile定義了進程需要的一切東西。Dockerfile涉及的內容包括執行代碼或者是文件、環境變量、依賴包、運行時環境、動態鏈接庫、操作系統的發行版、
  服務進程和內核進程(當應用進程需要和系統服務和內核進程打交道,這時需要考慮如何設計namespace的權限控制)等等; 2 Docker鏡像,在用Dockerfile定義一個文件之后,docker build時會產生一個Docker鏡像,當運行 Docker鏡像時,會真正開始提供服務; 3 Docker容器,容器是直接提供服務的。

 

 


 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM