启动/停止 Docker 服务
完成安装 docker 引擎后,我们必须启动 docker 服务。
# systemctl start docker
要在启动时启用服务启动:
# systemctl enable docker
要停止 docker 服务,请使用以下命令。
# systemctl stop docker
什么是Docker
Docker 是一个容器管理系统,可帮助我们以更简单和通用的方式轻松管理 Linux 容器 (LXC)。
许多 Linux 平台都支持 Docker,例如 RHEL、Ubuntu、Fedora、CentOS、Debian、Arch Linux 等。
许多云平台也支持它,例如 Amazon EC2、Rackspace Cloud 和 Google Compute Engine。
安装所需的包
- 如上文准备工作部分所述,我们需要有一个存储后端,例如 DeviceMapper。
device-mapper-persistent-data 和 lvm2 包是 devicemapper 存储驱动程序所必需的。
# yum install -y device-mapper-persistent-data lvm2
- 同时安装 yum-utils 包提供的 yum-config-manager 实用程序,以便在下一节中设置 docker 存储库。
# yum install -y yum-utils
准备工作
在安装 docker 引擎之前,让我们验证我们是否满足所有准备工作。
- Docker 仅支持 64 位架构。
因此,请确保我们手头没有 32 位系统。
要检查架构,请使用以下命令。
# uname -i x86_64
- 内核版本 3.8 或者更高版本支持 Docker。
要检查内核版本,请运行以下命令:
# uname -r 3.10.0-693.5.2.el7.x86_64
- 内核应该有一个存储后端,比如DeviceMapper。
要验证使用以下任一命令。
# rpm -qa | grep mapper device-mapper-1.02.140-8.el7.x86_64 device-mapper-libs-1.02.140-8.el7.x86_64
或者
# grep device-mapper /proc/devices 253 device-mapper
Docker 版本
Docker 有 2 个版本,即:
社区版 (CE):自己动手,社区支持的 Docker 版本,可免费使用。
Enterprise Edition (EE) : Docker 官方支持和付费版本。
安装Docker
终于到了实际安装 docker 社区版的最后一步。
# yum install docker-ce
设置存储库
使用以下命令为 docker 设置存储库。
# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
使用自动化脚本安装 Docker
还有一种安装 docker 的自动化方法,它会为我们安装准备工作包以及 docker 引擎。
该脚本是通用的,适用于所有可用的 linux 发行版。
要使用自动化脚本安装 docker,请使用以下任一命令:
$ sudo curl -sSL https://get.docker.io/ | sh
或者
sudo wget -qO- https://get.docker.io/ | sh
更新Docker
要将 docker 更新到最新版本,可以使用 yum update 命令。
# yum -y update docker
验证安装
我们可以通过使用以下任一命令查看安装的 docker 引擎版本来验证 docker 安装。
# docker info Containers: 0 Running: 0 Paused: 0 Stopped: 0 Images: 0 Server Version: 17.10.0-ce ...
# docker --version Docker version 17.10.0-ce, build f4ffd25
Docker 术语
Docker 镜像:它是运行应用程序所需的库、二进制文件和其他依赖项等文件的集合。
Docker 镜像中的这些文件是只读的,因此无法更改镜像的内容。Docker 容器:Docker 镜像是只读且无状态的。
另一方面,docker 容器是从 docker 镜像中分离出来的,并在其之上添加了一个读写层。Docker Registry:Docker 镜像可以存储在 Docker 注册表中,以便公开或者私有。
Docker Registry 可以作为公共或者私有注册表由第三方托管,例如 Docker Hub。