欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

快速安裝Docker詳細(xì)步驟教程

 更新時間:2022年03月18日 09:40:38   作者:腳丫先生  
這篇文章主要為大家詳細(xì)的介紹了快速安裝Docker的詳細(xì)步驟教程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

了解Docker是如何的與眾不同,如此的蒂花之秀后,我們緊接著從Docker的基礎(chǔ)循序漸進(jìn)的講解。

一、Docker的基本組成

1、Docker服務(wù)端和客戶端

在對Docker的基本組成講解之前,我們需要明白的是Docker是一個客戶端-服務(wù)端(C/S)架構(gòu)程序。不明白什么是C/S架構(gòu)對吧,我這里就簡單說明下,一般來說,應(yīng)用程序架構(gòu)分為兩種:

客戶端-服務(wù)端(C/S) :

Client - Server(C/S) = 客戶端 - 服務(wù)器。例如: QQ,迅雷,快播等。夜深人靜的時候,你躲在被子里,用自己安裝的快播神器看不知名的大片,快播軟件就需要和服務(wù)器進(jìn)行通信,服務(wù)器源源不斷的把各種畫面信息返回給快播神器。

在這里插入圖片描述

這種需要安裝軟件才能與服務(wù)器進(jìn)行數(shù)據(jù)通信的方式就是C/S架構(gòu)。

C/S系統(tǒng)結(jié)構(gòu)

在這里插入圖片描述

瀏覽器 - 服務(wù)端(B/S) :

Browser - Server(B/S) = 瀏覽器 - 服務(wù)器。例如:所有的網(wǎng)站都是B/S架構(gòu),你找你朋友,借一步說話,要了個網(wǎng)址,直接瀏覽器輸入就可以樂呵呵的看不知名的大片。這種不需要安裝軟件,直接有個網(wǎng)址就能看片的方式就屬于B/S架構(gòu)。

B/S系統(tǒng)結(jié)構(gòu)

在這里插入圖片描述

總的來說,C/S每一個客戶端都必須安裝和配置專用的軟件。B/S最大的優(yōu)點(diǎn)就是不用安裝任何專門的軟件,只要有一個瀏覽器就可以。

docker引擎是一個c/s結(jié)構(gòu)的應(yīng)用。Docker客戶端只需要向Docker服務(wù)端或者守護(hù)進(jìn)程發(fā)出請求,服務(wù)端或者守護(hù)進(jìn)程完成所有工作返回結(jié)果主要組件見下圖:

在這里插入圖片描述

  • Server是一個常駐進(jìn)程
  • REST API 實(shí)現(xiàn)了client和server間的交互協(xié)議
  • CLI 實(shí)現(xiàn)容器和鏡像的管理,為用戶提供統(tǒng)一的操作界面

2、Docker的基本組成

從上節(jié),我們可以知道Docker使用的是C/S架構(gòu),Client 通過接口與Server進(jìn)程通信實(shí)現(xiàn)容器的構(gòu)建,運(yùn)行和發(fā)布。client和server可以運(yùn)行在同一臺集群,也可以通過跨主機(jī)實(shí)現(xiàn)遠(yuǎn)程通信。

在這里插入圖片描述

鏡像(image):

Docker 鏡像就是一個只讀的模板,可以通過這個模板來創(chuàng)建容器。一個鏡像是可以創(chuàng)建多個容器的,就好像java里的類和對象一樣,類是鏡像,容器是對象。

容器(container):

Docker 利用容器來運(yùn)行應(yīng)用。容器是從鏡像創(chuàng)建而來的運(yùn)行實(shí)例。它可以被啟動、開始、停止、刪除。每個容器都是相互隔離的、保證安全的平臺。

倉庫(repository):

倉庫就是存放鏡像的地方,分為公有倉庫(Public)和私有倉庫(Private)兩種形式,其中官方倉庫 Docker Hub是國外的,而國內(nèi)很多公司,像阿里云,華為云等都有自己的容器服務(wù),Docker默認(rèn)使用的是國外的倉庫,我們在國內(nèi)訪問就很慢,所以我們在學(xué)習(xí)的時候就需要配置鏡像加速。

上面的介紹,我想可能對于剛剛學(xué)習(xí)Docker的老鐵來說,有點(diǎn)生澀難懂,我剛剛學(xué)習(xí)Docker的時候也是一樣。不過沒關(guān)系,我舉個通俗的例子講解:

我們需要注意的是Docker本身并不是容器,它只是創(chuàng)建容器的工具,是應(yīng)用容器引擎。

要想搞明白Docker,只需要知道兩點(diǎn)即可:

第一點(diǎn),Build, Ship and Run 譯為:構(gòu)建鏡像,運(yùn)輸鏡像,運(yùn)行鏡像

Build(構(gòu)建鏡像):鏡像就像是集裝箱包括文件以及運(yùn)行環(huán)境等等資源。

Ship(運(yùn)輸鏡像):主機(jī)和倉庫間運(yùn)輸,這里的倉庫就像是超級碼頭一樣。

Run (運(yùn)行鏡像):運(yùn)行的鏡像就是一個容器,容器就是運(yùn)行程序的地方。

舉個例子:

我爹年紀(jì)大了,想回老家蓋房子,我們來到老家,找了平時比較熱鬧的地方,買了塊地基準(zhǔn)備蓋房,于是我和我爹搬水泥,石頭,各種材料,費(fèi)了九牛二虎之力終于蓋好房子了。結(jié)果,住了一段時間,我爹說這兒太吵了,想換個清靜地方。按照傳統(tǒng)的辦法,我們只能再次搬石頭、砍木頭、畫圖紙、蓋房子。但是,哆啦A夢從百寶袋里掏出一個魔法棒,可以把我和我爹蓋的房子,打包做成“鏡像”,放在我的背包里。

等我到了安靜的地方,找塊空地,就用這個“鏡像”,復(fù)制一套房子,擺在那邊,拎包入住。所以Docker的第二點(diǎn)就是:Build once ,Run anywhere 譯為: 一次搭建,到處能用。

從上面的例子,放在我包里的鏡像就是 Docker鏡像,而我在安靜的空地,用魔法棒復(fù)制的一套房子就是一個Docker容器,我的背包,就是Docker倉庫。

既然,我和我爹蓋的房子可以打包做成鏡像,那么別人房子也可以做成鏡像,這樣一來,我們是不是就可以直接住各種豪宅,豈不美滋滋。這么多房子做成的鏡像,那就得需要一個大的包來裝,于是乎,這個大包就變成了專業(yè)術(shù)語里的倉庫(repository)。因此,官方提供了一個 Docker Hub給大家進(jìn)行共享房子鏡像,當(dāng)然你也可以搞私有倉庫,獨(dú)樂樂,不共享自己的房子鏡像給別人。

二、Docker的在線安裝

Docker官方建議在Ubuntu中安裝,因?yàn)镈ocker是基于Unbantu發(fā)布的,而且一般Docker出現(xiàn)的問題Ubuntu是最先更新或者打補(bǔ)丁的,在很多版本的Centos中是不支持更新最新的一些補(bǔ)丁包的。

在這里插入圖片描述

由于我們學(xué)習(xí)的環(huán)境都使用的Centos,因此這里將Docker安裝到Centos上。

注意:

Linux要求內(nèi)核3.0以上

CentOS 需要是7版本的

既然有官方提示的注意,那么我們?nèi)绾尾榭聪到y(tǒng)內(nèi)核呢?

1、使用uname命令驗(yàn)證

[root@localhost docker]# uname -r
3.10.0-1127.el7.x86_64

2、卸載已安裝的Docker

如果已經(jīng)安裝過Docker,請先卸載,再重新安裝,來確保整體的環(huán)境是一致的。

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

3、安裝yum工具包和存儲驅(qū)動

yum install -y yum-utils

4、設(shè)置鏡像的倉庫

yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
#上述方法默認(rèn)是從國外的,不推薦

#推薦使用國內(nèi)的,阿里云docker鏡像
yum-config-manager \
    --add-repo \
    https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

5、安裝docker

注意 : docker-ce 社區(qū)版 而ee是企業(yè)版。這里我們使用社區(qū)版即可。

yum install docker-ce docker-ce-cli containerd.io

6、啟動docker

systemctl start docker

7、設(shè)置開機(jī)啟動

systemctl enable docker

8、安裝后查看Docker版本

[root@localhost docker]# docker version
Client: Docker Engine - Community
 Version:           19.03.13
 API version:       1.40
 Go version:        go1.13.15
 Git commit:        4484c46d9d
 Built:             Wed Sep 16 17:03:45 2020
 OS/Arch:           linux/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.13
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.13.15
  Git commit:       4484c46d9d
  Built:            Wed Sep 16 17:02:21 2020
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.3.7
  GitCommit:        8fba4e9a7d01810a393d5d25a3621dc101981175
 runc:
  Version:          1.0.0-rc10
  GitCommit:        dc9208a3303feef5b3839f4323d9beb36df0a9dd
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683

9、配置阿里云鏡像加速

鑒于國內(nèi)網(wǎng)絡(luò)問題,后續(xù)拉取 Docker 鏡像十分緩慢,我們可以需要配置加速器來解決這個問題。

登錄阿里云

搜索 “ 容器鏡像服務(wù) ”

在這里插入圖片描述

獲取加速器地址

在這里插入圖片描述

通過修改 daemon 配置文件 /etc/docker/daemon.json 來使用加速器

tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://pak31uuv.mirror.aliyuncs.com"]
}
EOF
# 重啟 Docker
systemctl daemon-reload
systemctl restart docker

注意:
阿里云的本人自己賬號的鏡像地址(需要自己注冊有一個屬于你自己的): https://xxxx.mirror.aliyuncs.com

10、驗(yàn)證配置是否成功

docker info
# 輸出如下
Client:
 Debug Mode: false
Server:
 Containers: 15
  Running: 12
  Paused: 0
  Stopped: 3
 Images: 24
 Server Version: 19.03.6
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Native Overlay Diff: true
 Logging Driver: json-file
 Cgroup Driver: systemd
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 
 runc version: 
 init version: 
 Security Options:
  apparmor
  seccomp
   Profile: default
 Kernel Version: 4.15.0-96-generic
 Operating System: Ubuntu 18.04.4 LTS
 OSType: linux
 Architecture: x86_64
 CPUs: 4
 Total Memory: 7.767GiB
 Name: docker-services
 ID: YZSB:WJFB:RS4K:V22L:IVGK:GZVZ:UQL4:MCCR:MQ4X:6HRE:T5RM:53M5
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Registry Mirrors:
  https://k7da99jp.mirror.aliyuncs.com/
  https://dockerhub.azk8s.cn/
  https://registry.docker-cn.com/
 Live Restore Enabled: false
WARNING: No swap limit support

三、Docker內(nèi)網(wǎng)環(huán)境的離線安裝

由于在很多情況下需要安裝docker的虛擬機(jī)或服務(wù)器無法訪問互聯(lián)網(wǎng),因此需要離線安裝docker。

準(zhǔn)備工作

一臺可以訪問互聯(lián)網(wǎng)的虛擬機(jī)或服務(wù)器,操作系統(tǒng)不限,改機(jī)器可以訪問擬安裝docker的機(jī)器

STEP 1 : 以下操作在可以訪問互聯(lián)網(wǎng)的機(jī)器進(jìn)行

下載安裝包

訪問https://download.docker.com/linux/static/stable/ 選擇合適的版本并下載,

筆者用的是 :

https://download.docker.com/linux/static/stable/x86_64/docker-18.09.6.tgz

STEP 2: 將下載的安裝包上傳到擬安裝的機(jī)器

STEP 3: 以下操作在擬安裝的機(jī)器上進(jìn)行
1、解壓縮安裝包

tar -zxvf docker-18.09.6.tgz 

2、復(fù)制解壓縮后的文件到指定文件夾

 cp docker/* /usr/bin/ 

3、注冊編輯docker服務(wù)

vim /etc/systemd/system/docker.service

4、復(fù)制下列內(nèi)容到該文檔中

[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
# Having non-zero Limit*s causes performance problems due to accounting overhead
# in the kernel. We recommend using cgroups to do container-local accounting.
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
# Uncomment TasksMax if your systemd version supports it.
# Only systemd 226 and above support this version.
#TasksMax=infinity
TimeoutStartSec=0
# set delegate yes so that systemd does not reset the cgroups of docker containers
Delegate=yes
# kill only the docker process, not all processes in the cgroup
KillMode=process
# restart the docker process if it exits prematurely
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target

5、添加權(quán)限后啟動

chmod +x /etc/systemd/system/docker.service

6、重新加載配置文件

systemctl daemon-reload 

7、啟動Docker

systemctl start docker

8、設(shè)置開機(jī)自啟

systemctl enable docker.service

9、驗(yàn)證是否安裝成功

systemctl status docker
docker -v

四、運(yùn)行第一個容器

我們以 Nginx 為例,體驗(yàn) Docker 是如何運(yùn)行容器的

# 下載鏡像
docker pull nginx

# 運(yùn)行容器
docker run --name nginx-container -p 80:80 -d nginx

瀏覽器輸入虛擬機(jī)地址即可訪問 Nginx

在這里插入圖片描述

以上就是快速安裝Docker詳細(xì)步驟教程的詳細(xì)內(nèi)容,更多關(guān)于Docke安裝步驟的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

最新評論