Linux通过yum安装Docker

目录

一、安装环境

[1.1. 旧的docker包卸载](#1.1. 旧的docker包卸载)

[1.2. 安装常规环境包](#1.2. 安装常规环境包)

[1.3. 设置存储库](#1.3. 设置存储库)

二、安装Docker社区版

三、解决拉取镜像失败

[3.1. 创建文件目录/etc/docker](#3.1. 创建文件目录/etc/docker)

[3.2. 写入镜像配置](#3.2. 写入镜像配置)


https://docs.docker.com/engine/install/centos/

检测操作系统版本,我操作的服务器是CentOS7,所以本章节是依据CentOS7来讲解。

bash 复制代码
cat /etc/redhat-release

一、安装环境

1.1. 旧的docker包卸载

旧版本的Docker使用docker或docker-engine。在尝试安装新版本以及相关的依赖项之前,请卸载任何此类旧版本。

bash 复制代码
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

yum可能会报告您没有安装这些软件包。卸载Docker时,存储在/var/lib/docker/图像、容器、卷和网络不会自动删除。

如上图所示表示您本地之前没有安装过docker,所以直接忽略,开始安装docker。

bash 复制代码
# 更新yum软件包索引
yum makecache fast或yum update -y

1.2. 安装常规环境包

bash 复制代码
yum -y install gcc
yum -y install c++

我的服务器显示已经安装过,所以直接忽略。

1.3. 设置存储库

首次在新主机上安装Docker Engine之前,需要设置Docker存储库。之后就可以从存储库安装和更新Docker。

安装yum-utils软件包(提供yum-config-manager实用程序)并设置存储库

bash 复制代码
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

我的服务器显示已经安装过,所以直接忽略。

二、安装Docker社区版

bash 复制代码
sudo yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

安装过程中系统会询问你是否ok,统一选择y即可。

如上图所示即完成了Docker的安装,启动Docker服务并设置开机自启:

bash 复制代码
sudo systemctl start docker

sudo systemctl enable docker

(可选)为了避免每次使用Docker时都需要输入sudo,可以将您的用户添加到docker组:

bash 复制代码
sudo usermod -aG docker $USER

注意:在执行上述命令后,您可能需要注销并重新登录,或者重新启动系统,以便组变更生效。

测试Docker是否正确安装:

bash 复制代码
# 拉取最新的hello-world镜像到本地
docker pull hello-world:latest
# 运行镜像
docker run hello-world

如下图所示,运行hello-world镜像即为成功。

三、解决拉取镜像失败

在拉取hello-world镜像的时候,经常会出现连接超时等情况,这种问题通常是因为原有配置的国外镜像仓库网络不稳定导致的,我们可以通过手动更换镜像仓库地址来解决,以下是国内比较常用且稳定的镜像地址:

|---------------|--------------------------------------|
| Docker 中国官方镜像 | https://registry.docker-cn.com |
| DaoCloud 镜像站 | http://f1361db2.m.daocloud.io |
| Azure 中国镜像 | https://dockerhub.azk8s.cn |
| 科大镜像站 | https://docker.mirrors.ustc.edu.cn |
| 阿里云 | https://ud6340vz.mirror.aliyuncs.com |
| 七牛云 | https://reg-mirror.qiniu.com |
| 网易云 | https://hub-mirror.c.163.com |
| 腾讯云 | https://mirror.ccs.tencentyun.com |

3.1. 创建文件目录/etc/docker

bash 复制代码
sudo mkdir -p /etc/docker

3.2. 写入镜像配置

bash 复制代码
sudo tee /etc/docker/daemon.json <<-EOF
{
"registry-mirrors": [
"https://ud6340vz.mirror.aliyuncs.com",
"https://reg-mirror.qiniu.com",
"https://registry.docker-cn.com",
"http://f1361db2.m.daocloud.io",
"https://mirror.ccs.tencentyun.com"
]
}
EOF
bash 复制代码
# 重载 让镜像配置文件生效
sudo systemctl daemon-reload 
# 重启docker 让镜像配置文件生效
sudo systemctl restart docker   
 

按以上步骤操作后,即可成功拉取镜像。

相关推荐
paopaokaka_luck3 小时前
校园新闻推荐系统(DeepSeek新闻助手、个性化推荐算法、 Redis热词排行榜、ECharts运营分析、互动与实时通知、新闻运营闭环)
java·spring boot·mysql·spring·tomcat·echarts·intellij idea
yuniko-n4 小时前
【JUC】线程池
java·开发语言
小天源4 小时前
智叟云集政策监测技术方案——原文解析、证据提取与可核验摘要
java·服务器·数据库
yuzhiboyouye4 小时前
我现在得后端状况以及需要做的
java
小羊没烦恼!4 小时前
在.net中读写config文件的各种方法
java·大数据·运维·服务器·前端·数据库·oracle
卜锦元4 小时前
Docker Compose 部署 Nginx 1.30.6 完整指南
nginx·docker·容器
Escalating_xu4 小时前
【Linux 网络编程】网络命令加餐:用 ping、netstat、watch 和 pidof 排查服务问题
linux·运维·网络
mounter6254 小时前
现代 Linux 内核在异构内存与硬件演进下的架构变革:压缩 RAM、CXL 与分布式内存
linux·linux kernel·kernel
余额瞒着我当琳4 小时前
哈希表底层原理解析,直接定址法,哈希冲突,负载因子,哈希函数,开放定址法
java·c++·哈希算法·散列表
paopaokaka_luck5 小时前
民宿管理系统 (AI民宿总结、协同过滤推荐算法、WebSocket 在线咨询、ECharts 经营分析、房态与结算联动、 民宿预订业务闭环)
java·人工智能·spring boot·websocket·数据分析·echarts·推荐算法