本文是之前本地玩docker时的手稿,现在整理成序列文章。
docker官方文档:
https://docs.docker.com/get-started/
Docker 是一个开源的容器化平台,允许开发者将应用程序及其所有依赖项打包到一个容器中,从而实现轻松的部署、移植和扩展。
Docker 体系结构:
一、安装 docker 前准备
docker 支持 Linux、Windows、MacOS平台,支持的平台可以参考官网:
https://docs.docker.com/engine/install/。
支持的 Linux 大部分版本,但是要求 Linux 版本内核在 3.10 以上,执行命令 uname -r 查看系统内核版本验证你的 CentOS 是否支持 Docker:
1.1 安装 docker 相关依赖
执行命令 yum install -y yum-utils
device-mapper-persistent-data lvm2 安装Docker运行所需的底层依赖关系的包。
- yum-utils:一个 yum 的扩展工具集,提供了一些额外的功能,例如包清理、插件等。
- device-mapper-persistent-data:一个存储管理工具,它允许 Docker 使用设备映射技术来管理数据存储。
- lvm2:逻辑卷管理器的工具,它是 Linux 上用于管理逻辑卷的标准工具。
1.2 配置阿里云 docker yum 源
执行命令 yum-config-manager --add-repo
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo,将阿里云的 Docker CE 仓库地址添加到 yum 的仓库列表中,这样系统就能够使用 yum 命令从阿里云的 Docker CE 仓库获取 Docker CE 的安装包和更新。
二、安装 docker
2.1 docker 版本介绍
目前主要有两个版本:
- Docker-CE(Community Edition):社区版(开源免费)。
- Docker-EE (Enterprise Edition):企业版(闭源收费,docker的商业版本)。
docker-io 和 docker-engin 是之前的版本,版本号是1.X。
2.2 安装指定版本的 docker
本次安装社区版本 docker-ce。
查看仓库中的所有 docker-ce 版本,执行命令 yum list docker-ce --showduplicates | sort -r 查看系统中可用的 Docker CE 的所有版本,并按照版本号从最新到最旧的顺序排列。
- yum list docker-ce --showduplicates:列出系统中可用的 Docker CE 版本及其所有的重复版本。--showduplicates 参数告诉 yum 显示所有版本,而不仅仅是最新的版本。
- sort -r:对上一步的输出进行排序,-r 参数表示按照降序排序,即从最新版本到最旧版本。
安装指定的版本需要加上版本信息,如 yum install docker-ce-18.06.3.ce,不指定版本信息则默认安装最新稳定版:
如上表示安装完成。
2.3 启动 docker
安装完成后,执行命令 systemctl start docker 启动 docker,然后可执行命令 systemctl status docker 查看 docker 的状态。
若要开机启动,可执行命令 systemctl enable docker。
执行命令 docker version 查看 docker 版本:
如上显示出了包含 Client 和 Server 的版本信息。
三、配置 docker 镜像加速器
3.1 镜像地址介绍
docker 官方镜像地址:
https://hub.docker.com/search?q=&type=image
你打开看下网站加载是不是有点慢,因为网站是国外的。我们可以配置国内的镜像地址来提升获取 docker 官方镜像的速度。
目前国内比较出名的镜像站有:
- 阿里云镜像:https://{your_id}.mirror.aliyuncs.com
- Docker中国区官方镜像:https://registry.docker-cn.com
- 网易163镜像:http://hub-mirror.c.163.com
- daocloud镜像:http://{your_id}.m.daocloud.io
- 中科大镜像:https://docker.mirrors.ustc.edu.cn
3.2 配置国内镜像地址
docker 版本不低于 1.10 时可以直接通过 daemon config 进行配置。
如果目录【/etc/docker】不存在,先创建 mkdir -p /etc/docker ,执行命令 vi /etc/docker/daemon.json 编辑文件(没有会新增),添加内容:
{
"registry-mirrors": ["配置的加速地址"]
}
这样会配置 Docker 守护进程以使用指定的镜像加速器(registry mirror)来获取镜像
如配置Docker中国区官方镜像为:
{
"registry-mirrors": ["https://registry.docker-cn.com"]
}
配置阿里云 docker 镜像加速器比较麻烦,需要要注册账号后登录到容器镜像服务控制台中获取镜像加速地址。
登录阿里云的容器镜像服务控制台:
https://cr.console.aliyun.com/
选择镜像加速器,可以看到你的专属镜像加速地址:
修改完成后,重新加载 systemd 的配置文件,再重启 docker 服务即可。分别执行命令:
- systemctl daemon-reload:来通知 systemd 重新加载配置文件。
- systemctl restart docker:重新启动 Docker 服务。Docker 守护进程会重新加载其配置文件,包括 /etc/docker/daemon.json 中的更改。
其实上面如果只改了 daemon.json,直接执行命令 systemctl restart docker 就可以。
3.3 测试拉取较大点的镜像
拉取一个较大一点的镜像 MySql:
下载很快,一两分钟就完成了。
执行命令 docker images 查看镜像列表,如下已经有两个镜像了:
四、安装实际应用
后面的序列文章会详细介绍如何使用 docker,安装具体的服务,如数据库 sqlserver、mysql、redis、mongodb等,如文件存储服务 ftp、sftp,服务器 nginx 等,还有一些其它非常实用的服务,关注我,不迷路。