前言:
Docker 是一个用于开发、传送和运行应用程序的开放平台。Docker 使您能够将应用程序与基础设施分开,以便您可以快速交付软件。使用 Docker,您可以像管理应用程序一样管理基础设施。通过利用 Docker 的快速交付、测试和部署代码的方法,您可以显着减少编写代码和在生产中运行代码之间的延迟。为了让开发、部署、测试和分发变得更高效和轻松,让我们把Docker安装起来体验一下它的魅力所在吧!
系统要求:
- Docker 支持 64 位版本 CentOS 7/8,并且要求内核版本不低于 3.10。
- 需要启用centos-extras repository。在 CentOS 7 中这个仓库是默认启用的,如果之前有将其禁用,则需要重新启用
- CentOS 7 满足最低内核的要求,但由于内核版本比较低,部分功能(如
overlay2
存储层驱动)无法使用,并且部分功能可能不太稳定。
安装环境:
本文主要是在Liunx操作系统CentOS8.4中安装Docker,我们安装之前可以先查看自己的系统版本,使用命令:lsb_release -a 进行查看(如下图所示)。
注意:切勿在没有配置 Docker YUM 源的情况下直接使用 yum 命令安装 Docker.
卸载旧版本:
旧版本的Docker在CentOS中的包名为docker或者docker-engine。如果你之前的Linux CentOS系统中安装了Docker的旧版本,你需要先卸载旧版Docker及其相关依赖,执行以下命令:
代码语言:javascript复制sudo yum remove docker
docker-client
docker-client-latest
docker-common
docker-latest
docker-latest-logrotate
docker-logrotate
docker-selinux
docker-engine-selinux
docker-engine
因为我的系统系刚安装的,所以执行上面的命令提示的是没有找到需要移除的包!
如果yum
报告没有安装这些软件包,那也没关系。
注意:/var/lib/docker/
目录下的内容,包括镜像、容器、卷组、网络等文件将被保留。Docker CE 的新包名为docker-ce
。
yum到底是干什么的?
简单描述:yum称为包管理器,主要用来解决:下载、依赖关系、安装、卸载四种问题。
详细说明:https://blog.csdn.net/weixin_43202123/article/details/119948927
使用yum安装:
执行以下命令安装依赖包和必要的一些系统工具:
代码语言:javascript复制sudo yum install -y yum-utils device-mapper-persistent-data lvm2
配置yum稳定镜像源:
因为国内网络原因,推荐使用阿里云提供的Docker CE 镜像源站!
代码语言:javascript复制sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
官方镜像源地址:
代码语言:javascript复制# 官方源
# sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
安装 Docker
更新 yum
软件源缓存,并安装 docker-ce(一路yes即可)
。
sudo yum install docker-ce docker-ce-cli containerd.io
如下是成功安装的依赖:
查看安装成功的docker版本:docker -v
CentOS8 额外设置
由于 CentOS8 防火墙使用了 nftables
,但 Docker 尚未支持 nftables。
首先我们查看防火墙的状态,假如防火墙状态是开启的我们执行下面的操作:
代码语言:javascript复制systemctl status firewalld
我们可以使用如下设置使用 iptables
:更改 /etc/firewalld/firewalld.conf
# FirewallBackend=nftables
FirewallBackend=iptables
或者执行以下命令:
代码语言:javascript复制firewall-cmd --permanent --zone=trusted --add-interface=docker0
firewall-cmd --reload
开启Docker服务:
执行sudo service docker start 命令开启Docker服务提示异常:Redirecting to /bin/systemctl start docker.service
看异常就是需要执行systemctl的相关命令,因为Linux的不同发行版开启Docker服务的命令也有所不同
代码语言:javascript复制sudo systemctl enable docker
sudo systemctl start docker
最后查看docker运行状态
代码语言:javascript复制systemctl status docker
启动 Docker 守护进程:
官方教程:https://docs.docker.com/config/daemon/systemd/
手动启动
安装 Docker 后,您需要启动 Docker 守护程序。大多数 Linux 发行版用于systemctl
启动服务。
sudo systemctl start docker
在系统启动时自动启动
如果您希望 Docker 在启动时启动,请参阅 配置 Docker 以在启动时启动