前言
Docker已经成为了最火的容器技术,相比虚拟机它是一款更加轻量级的容器技术,我里我们讲解下如何在Linxu上安装Docker。
Docker简介
Docker官方网址: https://docs.docker.com/ 英文地址
Docker中文网址: http://www.docker.org.cn/ 中文地址
Docker是基于Go语言实现的云开源项目,诞生于2013年初,最初发起者是dotClouw公司。
Docker自开源后受到广泛的关注和讨论,目前已有多个相关项目,逐断形成了围Docker的生态体系。dotCloud 公司后来也改名为Docker
Ine。Docker是一个开源的容器引擎,它有助于更快地交付应用。
Docker可将应用程序和基础设施层隔离,并且能将基础设施当作程序一样进行管理。
使用 Docker可更快地打包、测试以及部署应用程序,并可以缩短从编写到部署运行代码的周期。
Docker的优点
简化程序
节省开支
Docker 让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux
机器上,便可以实现虚拟化。Docker改变了虚拟化的方式,使开发者可以直接将自己的成果放入Docker中进行管理。方便快捷已经是
Docker的最大优势,过去需要用数天乃至数周的 任务,在Docker容器的处理下,只需要数秒就能完成。
Docker三个概念
Docker有三个概念(容器、镜像、仓库),刚开始可能不太明白,其实不用想的复杂,举个例子就明白了:
容器:通过docker run命令运行指定镜像,就创建并启动了一个容器,容器可以理解为一个Linxu虚拟机,容器内有自己的Mac地址,ip地址等。
镜像:可以简单理解为一个特殊的应用程序,比如Tomcat镜像,通过docker run命令指定Tomcat镜像就创建并启动了一个容器。
仓库:存放镜像的一个仓库(官方DockerHub),可以理解为Maven的中央仓库 或 GitHub。
过程:我们先去仓库拉取一个镜像,如Tomcat的镜像,然后启动一个容器并指定这个Tomcat镜像,这个镜像运行后,便创建了一个容器
安装Docker
Docker 要求 CentOS 系统的内核版本在 3.10以上 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker。
-
通过 uname -r 命令查看你当前的内核版本
uname -r
-
使用 root 权限登录 Centos。确保 yum 包更新到最新。
yum -y update
-
卸载旧版本(如果安装过旧版本的话)
yum remove docker docker-common docker-selinux docker-engine
-
安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
yum install -y yum-utils device-mapper-persistent-data lvm2
-
设置yum源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
-
可以查看所有仓库中所有docker版本,并选择特定版本安装
yum list docker-ce --showduplicates | sort -r
-
安装docker
sudo yum install -y docker-ce
#由于repo中默认只开启stable仓库,故这里安装的是最新稳定版18.03.1,-ce表示免费版本,还有ee闭源版 -
启动并加入开机启动
systemctl start docker
//启动docker
systemctl enable docker
//设置为开机启动 -
验证安装是否成功(有client和service两部分表示docker安装启动都成功了)
docker version
安装成功查看版本:
拓展:
moby、docker-ce与docker-ee
最早的时候docker就是一个开源项目,主要由docker公司维护。
2017年年初,docker公司将原先的docker项目改名为moby,并创建了docker-ce和docker-ee。
这三者的关系是:
moby是继承了原先的docker的项目,是社区维护的的开源项目,谁都可以在moby的基础打造自己的容器产品
docker-ce是docker公司维护的开源项目,是一个基于moby项目的免费的容器产品
docker-ee是docker公司维护的闭源产品,是docker公司的商业产品。
moby project由社区维护,docker-ce project是docker公司维护,docker-ee是闭源的。
要使用免费的docker,从网页docker-ce上获取。
要使用收费的docker,从网页docker-ee上获取。
------------------------------------ 学习不易,需要坚持 -------------------------------