安装docker

55 阅读2分钟

准备阶段

系统初始化 关闭selinux

查看状态 getenforce

临时关闭 setenforce 0

永久关闭 vi /etc/selinux/config

#设置为disabled SELINUX=disabled

防火墙 查看防火墙状态 systemctl status firewalld

关闭 systemctl stop firewalld

net-tools

yum install net-tools -y

openssh-server

yum install openssh-server -y

systemctl start sshd.service

systemctl enable sshd.service

可以在win上用xshell等工具SSH连接centos

wget yum install wget -y

centos常用工具包 yum install -y bash-completion vim lrzsz wget expect net-tools nc nmap tree dos2unix htop iftop iotop unzip telnet sl psmisc nethogs glances bc ntpdate openldap-devel

安装docker

1.更新yum 包 sudo yum update

2.移除旧版本 sudo yum remove docker
docker-client
docker-client-latest
docker-common
docker-latest
docker-latest-logrotate
docker-logrotate
docker-engine

3.安装Docker CE(社区版)

首先,设置 Docker 的仓库:(yum-util提供yum-config-manager功能,另外两个是devicemapper驱动依赖的) (需要的工具安装包)

sudo yum install -y yum-utils device-mapper-persistent-data lvm2 (如果报错: yum-config-manager --save --setopt=.skip_if_unavailable=true

Cannot find a valid baseurl for repo: centos-sclo-sclo/x86_64 )

🔧 第一步:确认是否已更换所有 CentOS 官方源为阿里云源

你需要确保整个系统的默认仓库都指向阿里云,而不是只改了一个加速器地址。

✅ 替换默认的 CentOS-Base.repo:

cd /etc/yum.repos.d

备份原有文件

sudo mv CentOS-Base.repo CentOS-Base.repo.bak

下载阿里云的 CentOS 7 源配置

sudo curl -O mirrors.aliyun.com/repo/Centos…

✅ 替换 EPEL 源(如果有安装):

sudo mv epel.repo epel.repo.bak sudo curl -O mirrors.aliyun.com/repo/epel-7…

第二步:禁用失效的 centos-sclo-sclo 仓库

该仓库是 Software Collections (SCL) 的一部分,用于安装如 Python、Node.js 等新版语言运行时。但由于官方源已不可用,我们需要禁用它。

sudo yum-config-manager --disable centos-sclo-sclo

第三步:清理缓存并重试安装

sudo yum clean all

sudo yum makecache

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

sudo yum-config-manager --add-repo mirrors.aliyun.com/docker-ce/l…

然后,安装Docker CE:

对于CentOS7或较早版本:

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

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

安装最新版本

yum install -y docker-ce

4.启动Docker并设置为开启启动

sudo systemctl start docker

sudo systemctl enable docker --now

查看docker状态

systemctl status docker

停止docker

systemctl stop docker

5.验证安装是否成功

docker --version

docker info

6.测试hello-world

docker run hello-world

查看hello-world镜像

docker images

REPOSITORY:表示镜像的仓库源

TAG:镜像的标签

IMAGE ID: 镜像的ID(唯一的主键)

CREATED:镜像的创建时间

SIZE:镜像的大小

docker images [参数]

-a #列出本地所有的镜像,含中间映像层

-q #只返回镜像id

-qa #-a与-q的组合参数

-digests #一些镜像的摘要说明

-no-trunc #显示完整的镜像信息

7.卸载当前的docker ---非必须

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

8.删除所有镜像、容器和卷  ---非必须

主机上的映像、容器、卷或自定义配置文件不会删除,需要手动删除

rm -rf /var/lib/docker

rm -rf /var/lib/containerd