Docker
⛅Docker-安装
🌠各平台支持情况
🌠Server 版本安装
☃️Ubuntu
🍂安装依赖
操作系统版本
Ubuntu Kinetic 22.10
Ubuntu Jammy 22.04 (LTS)
Ubuntu Focal 20.04 (LTS)
Ubuntu Bionic 18.04 (LTS)
支持的 CPU
ARM & X86_64
🍂安装 Docker
确定 CPU → uname -a
root@ecs-144421:~# uname -a
Linux 139-159-150-152 5.4.0-100-generic #113-Ubuntu SMP Thu Feb 3 18:43:29 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
上述即为 X86_64 的CPU
确定操作系统版本 → cat /etc/*release
root@ecs-144421:~# cat /etc/*release*
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04.4 LTS"
NAME="Ubuntu"
VERSION="20.04.4 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.4 LTS"
VERSION_ID="20.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-andpolicies/privacy-policy"
VERSION_CODENAME=focal
UBUNTU_CODENAME=focal
上述即为 Ubuntu 系统
卸载旧版本
root@ecs-144421:~# sudo apt-get remove docker docker-engine
docker.io containerd runc
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package docker-engine
卸载历史版本
# 卸载软件
sudo apt-get purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras -y
# 删除相应数据
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
配置 Docker 下载源
# curl 命令安装
sudo apt install curl -y
# 创建 gpg key 目录
sudo mkdir -m 0755 -p /etc/apt/keyrings
# 下载 gpg key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor --yes -o /etc/apt/keyrings/docker.gpg
echo \
"deb [arch=$(dpkg --print-architecture) signedby=/etc/apt/keyrings/docker.gpg]
https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
安装
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
启动 Docker
# 配置加载
sudo systemctl daemon-reload
# 启动服务
sudo systemctl start docker
# 开启自启
sudo systemctl enable docker
# 查看服务状态
sudo systemctl status docker
☃️Centos
🍂安装依赖
操作系统版本
CentOS 7
CentOS 8(stream)
CentOS 9(stream)
支持的 CPU
ARM & X86_64
🍂安装 Docker
确定 CPU → uname -a
[root@VM-8-11-centos ~]# uname -a
Linux VM-8-11-centos 3.10.0-1160.99.1.el7.x86_64 #1 SMP Wed Sep 13 14:19:20 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
上述即为 X86_64 的CPU
确定操作系统版本 → cat /etc/*release
[root@VM-8-11-centos ~]# cat /etc/*release*
CentOS Linux release 7.6.1810 (Core)
Derived from Red Hat Enterprise Linux 7.6 (Source)
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
CentOS Linux release 7.6.1810 (Core)
CentOS Linux release 7.6.1810 (Core)
cpe:/o:centos:centos:7
上述即为 CentOS 系统
卸载旧版本
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
卸载历史版本
# 删除机器上的包
sudo yum remove docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
# 删除相应数据
sudo rm -rf /var/lib/docker
sudo rm -rf /var/lib/containerd
配置仓库
# 安装 yum-utils 软件包
sudo yum install -y yum-utils
# 添加 Docker CE 的软件源
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 查看 yum-repos 内容
ll cat /etc/yum.repos.d/
# 配置使用国内源
sed -i 's@//download.docker.com@//mirrors.ustc.edu.cn/docker-ce@g' /etc/yum.repos.d/docker-ce.repo
安装
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
启动 Docker
# 配置加载
sudo systemctl daemon-reload
# 启动服务
sudo systemctl start docker
# 开机启动
sudo systemctl enable docker
# 查看服务状态
sudo systemctl status docker
🌠Docker 镜像源修改
# 进入 /etc/docker 目录
cd /etc/docker
# 修改 daemon.json 文件的内容(配置镜像源)
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn/"]
}
# 重启 dockerd(保证修改的配置文件生效)
sudo systemctl restart docker
🌠Docker 目录修改
Docker 默认的安装目录为/var/lib/docker
, 这里面会存放很多很多镜像, 所以我们在安装的时候需要考虑这个目录的空间,有三种解决方案
- 将
/var/lib/docker
挂载到一个大的磁盘, 这种一般我们能控制挂载目录, 像腾讯云这种云厂商在安装K8s
的节点的时候提供了挂载选项,可以直接挂载这个目录过去 - 安装之前挂载一个大的磁盘,然后创建一个软链接到
/var/lib/docker
,这样就自动安装到我们空间比较大的磁盘了 - 安装了 docker,然后发现忘了配置这个目录,我们需要修改 docker 的配置文件
# 假定磁盘中大的目录为 /data
mkdir -p /data/var/lib/docker
# 编辑配置文件
vim /etc/docker/daemon.json
# 在配置文件中输入如下内容
{
"data-root": "/data/var/lib/docker"
}
# 加载配置
sudo systemctl daemon-reload
# 重启 docker
sudo systemctl restart docker
# 查看 docker 状态
sudo systemctl status docker