本系列将会与大家分享 Docker 的相关知识。本章主要简要介绍 Docker,并指导大家如何在 CentOS 7 上进行 Docker 的安装。废话不多说,下面我们直接进入主题。
一、Docker简介
Docker 是一个开源的应用容器引擎,基于Go 语言并遵从 Apache2.0 协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app)更重要的是容器性能开销极低。
Docker支持将软件编译成镜像;在镜像中支持各种软件配置好并发布,其他使用者可以直接使用配置好的镜像。运行中的镜像称之为容器,容器启动速度很快。类似于封装好的Windows系统,通过U盘直接安装即可,不需要进行系统配置软件。
1、Docker的应用场景
- Web应用的自动化打包发布;
- 自动化测试和持续集成、发布;
- 在服务型环境中部署调整数据库或其他的后台应用;
- 从头编译或者扩展现有的 OpenShift 或 Cloud Foundry 平台来搭建自己的 PaaS 环境。
2、Docker的优点
- 快速、一致性的交付应用程序
- 响应式部署和扩展
- 充分利用虚拟机资源
二、Docker核心概念
Docker主机(Host):安装了Docker程序的机器(Docker直接安装在操作系统中)
Docker客户端(Client):连接Docker主机进行操作;
Docker容器(Container):镜像启动后的实例,独立运行的一个或一组应用;
Docker镜像(Image):打包好的软件,用于创建Docker容器的模板;
Docker仓库(Respository):用于保存打包好的软件镜像;
1、关系示意图
2、Docker的基本使用方式
- 在机器中安装Docker;
- 在Docker仓库中寻找这个软件对应的镜像;
- 使用Docker运行镜像,生成一个Docker容器;
- 容器的启动或停止相当于对软件的启动和停止;
三、Docker的搭建
1、环境准备
1)检查Linux版本
Docker对Linux系统版本有一定的要求,确保你的系统版本满足Docker的最低要求。对于CentOS,通常需要CentOS 7或更高版本。
要求 CentOS 7 系统的内核版本高于 3.10,可通过如下指令查看版本:
[root@localhost ~]# uname -r 3.10.0-1160.el7.x86_64
2)更新系统
sudo yum update
使用 sudo yum update 命令更新你的系统到最新版本,以确保所有依赖项都是最新的。
3)卸载旧版本的Docker(如果已安装)
sudo yum remove docker docker-common docker-selinux docker-engine
使用 sudo yum remove docker docker-common docker-selinux docker-engine 命令卸载旧版本的Docker及其相关组件。
2、安装Docker
1)安装必要的系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
执行 sudo yum install -y yum-utils device-mapper-persistent-data lvm2 命令,安装Docker所需的一些基础软件包和工具。
2)添加Docker软件源
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
由于Docker的官方源在国外,下载速度可能较慢,因此建议使用国内的镜像源。执行类似 sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 的命令(这里以阿里云为例),添加Docker CE的官方镜像源。
3)更新yum索引
sudo yum makecache fast
执行 sudo yum makecache fast 命令,更新yum的软件包索引。
4)安装Docker CE
sudo yum install docker-ce docker-ce-cli containerd.io
执行 sudo yum install docker-ce docker-ce-cli containerd.io 命令,安装Docker CE(社区版)、Docker CE CLI(命令行界面)和containerd.io(Docker的容器运行时)。
3、启动Docker并验证安装
1)启动Docker服务
sudo systemctl start docker
执行 sudo systemctl start docker 命令,启动Docker服务。
2)设置Docker开机自启(可选)
sudo systemctl enable docker
执行 sudo systemctl enable docker 命令,设置Docker服务开机自启。
3)验证Docker是否安装成功
docker --version
执行 docker --version 或 docker version 命令,查看Docker的版本信息,以验证Docker是否成功安装。
[root@localhost ~]# docker --version Docker version 26.1.4, build 5650f9b
或者
[root@localhost ~]# sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
说明安装成功。
4)检查Docker服务状态
sudo systemctl status docker
如果Docker已安装并正在运行,你将看到类似“active (running)”的状态信息。
5)补充:查看当前可安装的Docker版本
yum list docker-ce --showduplicates | sort -r