1.首先关闭防火墙和selinux
setenforce 0
systemctl stop firewalld
iptables -t filter -F
2.安装
卸载之前的docker
yum remove docker docker-common docker-selinux docker-engine -y
rocky linux 9
sudo dnf remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
安装docker所需安装包
yum install -y yum-utils device-mapper-persistent-data lvm2
rocky linux 9
sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo dnf install docker-ce docker-ce-cli containerd.io -y
sudo dnf install dnf-plugins-core -y
安装docker yum源
yum install wget -y
# 官方源(国内访问不了了)
wget -O /etc/yum.repos.d/docker-ce.repo https://repo.huaweicloud.com/docker-ce/linux/centos/docker-ce.repo
# 可以用阿里云的(与官网的是一致的,感谢阿里云)
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
rocky linux 添加 Docker 官方仓库
#注意:Rocky Linux兼容RHEL/CentOS仓库,直接使用CentOS 9的Docker仓库即可。
sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
安装docker
# 1、安装
yum install docker-ce -y
systemctl start docker # 启动后,才会创建出目录/etc/docker
# 2、修改配置
vim /etc/docker/daemon.json # 修改文件时记得去掉下面的注释
{
# 1、cgroup驱动,在介绍cgroup机制时会详细介绍
"exec-opts": ["native.cgroupdriver=systemd"],
# 2、由于国内特殊的网络环境,往往我们从Docker Hub中拉取镜像并不能成功,而且速度特别慢。那么我们可以给Docker配置一个国内的registry mirror,当我们需要的镜像在mirror中则直接返回,如果没有则从Docker Hub中拉取。是否使用registry mirror对Docker用户来说是透明的。
"registry-mirrors": ["https://docker.chenby.cn"],
# 3、# 修改数据的存放目录到/opt/mydocker/,原/var/lib/docker/
# 3.1 老版本docker-ce指定数据目录用graph
# "graph": "/opt/mydocker",
# 3.2 docker20.x.x新版本不用graph,而是用data-root
# "data-root": "/opt/mydocker",
# 4、重启docker服务,容器全部退出的解决办法
"live-restore": true
}
rocky linux 9 安装 Docker Engine
sudo dnf install docker-ce docker-ce-cli containerd.io -y
启动并设置开机自启
先创建出数据目录
[root@docker01 ~]# mkdir -p /opt/mydocker
[root@docker01 ~]# systemctl restart docker.service
[root@docker01 ~]# systemctl enable --now docker.service
[root@docker01 ~]# docker info # 查看
rocky linux 9 启动并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker
加速
cat > /etc/docker/daemon.json <<EOF
{
"registry-mirrors": ["https://15.164.211.114:6443"],
"insecure-registries": ["15.164.211.114:6443"],
"exec-opts": ["native.cgroupdriver=systemd"]
}
EOF
# 重启Docker服务
systemctl daemon-reload && systemctl restart docker
======================下面是ubuntu安装docker======================
卸载旧版本(可选)
sudo apt remove docker docker-engine docker.io containerd runc
更新系统并安装依赖
sudo apt update sudo apt install -y ca-certificates curl gnupg lsb-release
添加 Docker 官方 GPG 密钥
sudo mkdir -p /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
设置 Docker 仓库
echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/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
安装 Docker Engine
sudo apt update sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
验证安装
sudo docker run hello-world
(可选)免 sudo 执行 Docker
sudo usermod -aG docker $USER
设置开机自启
sudo systemctl enable docker.service sudo systemctl enable containerd.service
#常用管理命令: sudo systemctl start docker # 启动 sudo systemctl stop docker # 停止 sudo systemctl restart docker # 重启 docker version # 查看版本
补充:
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
使用该yum源的时候,会有一个文件缺失,
解决方案:
1)从此处下载:https://mirrors.aliyun.com/docker-ce/linux/centos/7/x86_64/stable/Packages/
2)rpm -vih containerd.io-1.6.32-3.1.el7.x86_64.rpm(下载需要的rpm包)
接着安装的时候会下载另外一个依赖:container-selinux
解决方案:
1)yum install container-selinux
然后再执行后续操作就可以了。