Linux之路:Centos安装 Docker
Docker 提供轻量的虚拟化,你能够从 Docker 获得一个额外抽象层,你能够在单台机器上运行多个Docker微容器。
而每个微容器里都有一个微服务或独立应用,例如你可以将Tomcat运行在一个Docker,而MySQL运行在另外一个Docker。快速启动,易于弹性伸缩和拓展等特性使得 Docker 发展飞速。
本篇我们就介绍如何在 Centos 上安装docker
注意
文章中的命令都是在 root 用户权限下执行的,操作之前,请确保能使用root用户的权限。
1. 准备阶段
Docker 从 2013 年 3 月 20 日发布 Docker0.1,到现在已经发布了多个版本,从 2017 年 3 月开始 docker 在原来的基础上分为两个分支版本: DockerCE 和 DockerEE。
官网 :https://www.docker.com/
DockerCE 即社区免费版,可永久免费使用;
DockerEE 即企业版,功能更全,更强调安全,但需付费使用;
对于普通用户,我们只需使用 DockerCE 就可以了。
首先,要在centos上运行docker,您必须确定您的系统版本为 7.x,通过以下命令可以查看当前系统版本:
cat /etc/redhat-release |
如果系统为6.x,建议先升级到7.x。
PS:如果您以前安装过docker,建议您先把旧版移除:
yum remove docker
2. 开始安装
更新软件包:
yum update
安装一些必要的工具。安装
yum-utils
,它提供一个yum-config-manager
单元,同
时安装的device-mapper-persistent-data
和lvm2
用于储存设备映射(devicemapper)
yum install -y yum-utils device-mapper-persistent-data lvm2
ps:-y 表示遇到要输入yes or no?时候默认为yes配置docker软件源仓库,这里建议使用阿里云的:
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装最新版
docker-ce
yum install docker-ce
启动 Docker 服务
systemctl start docker
查看 Docker 服务状态
systemctl status docker
如果能看到如下结果
绿色单词
则代表安装并启动成功:
3. 配置国内镜像源
如果是接触过 linux 的比较清楚,大多数系统的默认软件源都在国外,下载很慢。
Docker也是如此,所以我强烈建议您配置国内的镜像源
1、 国内镜像源加速站点
https://registry.docker-cn.com
http://hub-mirror.c.163.com
https://mirror.ccs.tencentyun.com
如果想使用阿里云的加速,需要注册账号,具体可参考阿里的官方教程:官方镜像加速
2、使用命令来配置加速站点
mkdir -p /etc/docker |
或者使用脚本来配置加速站点
该脚本可以将 –registry-mirror 加入到你的 Docker 配置文件 /etc/docker/daemon.json 中。适用于 Ubuntu14.04、Debian、CentOS6 、CentOS7、Fedora、Arch Linux、openSUSE Leap 42.1,其他版本可能有细微不同。更多详情请访问文档。
$ curl -sSL https://raw.githubusercontent.com/wss434631143/xiaoshujiang/master/articles/Docker/shell/set_mirror.sh | sh -s <your accelerate address> |
3、以上操作后重新加载daemon并重启 Docker
systemctl daemon-reload |
然后使用 docke info
查看docker信息,在最下面可以看到你配置的docker的镜像地址
4、测试
配置好之后我们测试拉取一个镜像,比如mysql
docker pull mysql |
根据网速,一般来说十来秒就可以下载完成,配置成功。
3. 基本命令和配置
大多数时候,我们都不想每次启动服务器手动启动服务,我强烈推荐将docker服务设为自启动:
systemctl enable docker |
3.2 Docker 服务信息查看
docker -v 查看版本 |
3.3 测试运行HELLO-WORLD
拉取镜像:
docker pull hello-world |
运行镜像:
docker run hello-world |
运行成功: