史上最詳細的Docker安裝手冊


概述:

  這個安裝手冊我已經使用了將近2年的時間,一直在進行完善(可以用於生產級別)。使用了Centos 7系統。

一、Docker簡單介紹

  Docker是一個容器,使用的是Linux現有的技術,准確來說是基於Linux內核虛擬化技術發展而來,例如:網絡模型之一網橋。底層核心技術是Namespace和cgroups。

  Docker版本有企業版(收費)和社區版,我們一般使用的是社區版。社區版有三個發布版本,下面是對於三個發布版本的描述:

二、Docker的卸載和升級

 注:如需要安裝企業版的,請參考:https://docs.docker.com/install/linux/docker-ee/centos/

 2.1 卸載已安裝的docker(如未安裝,可跳過)

##1. 列出安裝過的包
# yum list installed | grep docker
##2. 根據安裝過的包進行卸載
# yum -y remove docker-ce-cli.x86_64
# yum -y remove docker-ce.x86_64
# yum -y remove containerd.io

 2.2 更新docker(更新至最新版本)

# yum -y update docker

三、Docker的安裝

 3.1 配置docker源(如已安裝過docker,則不需要進行此步驟,該步驟和第3步可以任意選擇一個執行)

## 如果沒有安裝wget,可以使用下面的命令進行安裝
# yum install -y wget

# wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo

 3.2 安裝 docker 環境

# yum install -y yum-utils device-mapper-persistent-data lvm2

 3.3 設置從stable倉庫獲取docker

# yum-config-manager --add-repo  https://download.docker.com/linux/centos/docker-ce.repo

 3.4 安裝docker(注:不建議使用這一條命令,建議使用下一條命令,因為這會獲取最新版本的docker

# curl -fsSL https://get.docker.com/ | sh

 3.5 安裝docker

# yum install -y --allowerasing docker-ce docker-ce-cli containerd.io

## 說明:
##    獲取哪些版本的docker可以使用
##    yum list docker-ce --showduplicates | sort -r
##    獲取指定版本的docker
##    yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io
##    例如:yum install docker-ce-18.09.9 docker-ce-cli-18.09.9 containerd.io -y

## 注意:
## 2020-10-25 最近發現可能需要增加參數 --allowerasing (也就是說需要執行下面的命令才能安裝)
## yum install -y --allowerasing docker-ce docker-ce-cli containerd.io

 3.6 啟動Docker和設為開機啟動配置鏡像加速

# systemctl start docker && systemctl enable docker

 3.7 配置鏡像加速

 默認docker從DockerHUB上拉取鏡像,由於國內網絡原因下載鏡像速度會變慢,所以可以配置國內鏡像加速地址https://registry.docker-cn.com,當有多個鏡像加速地址時候可在列表中以逗號分割。

 執行以下命令:

# mkdir -p /etc/docker
## 配置阿里雲加速器(這里使用的是我自己的,也可以自行在阿里雲申請)
# tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://usydjf4t.mirror.aliyuncs.com", "https://registry.docker-cn.com"]
}
EOF

## 重新啟動守護進程
# systemctl daemon-reload 
## 重啟docker
# systemctl restart docker
## 說明:
## 私有倉儲如不是https,需要在 /etc/docker/daemon.json 文件 增加以下配置(192.168.1.100 為私有倉儲服務器IP)
{ "insecure-registries":["192.168.1.100:5000"] }

## 最終效果如下:
{
  "registry-mirrors": ["https://usydjf4t.mirror.aliyuncs.com", "https://registry.docker-cn.com" ]
  , "insecure-registries":["192.168.1.100:5000"]
}

 3.8 測試功能

## 查看docker版本
# docker version

## 下載hello-world鏡像
# docker run hello-world

  查看docker狀態

# service docker status

 

附錄

 參考資料:

 1. 官網安裝文檔
  https://docs.docker.com/install/linux/docker-ce/centos/
  https://docs.docker-cn.com/engine/installation/linux/docker-ce/centos/

 2. Virtualbox Centos 7 安裝
 https://www.ostechnix.com/install-docker-centos/

 3. 配置阿里雲加速器

 https://blog.csdn.net/xlemonok/article/details/71403534 

 

------------------ 2020-07-29 修改內容 -------------------

增加私有倉儲配置信息: "insecure-registries":["192.168.1.100:5000"]

------------------ 2020-10-25 修改內容 -------------------

執行以下命令進行安裝:(yum命令增加了allowerasing參數)

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

說明:

  --allowerasing:允許擦除已安裝的軟件包以解決依賴關系。 此選項可以用作yum swap XY命令的替代方法,在該命令中,未明確定義要刪除的軟件包。

 


免責聲明!

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



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