一、docker概述
docker是一个开源项目,诞生于2013年初。它是基于Google公司推出的go语言实现,docker的目标是实现轻量级的操作系统虚拟化解决方案。docker的基础是Linux容器(LXC)等技术,在LXC基础上docker进行了进一步的封装,让用户不需要关心容器的管理,是的操作更加简单。用户使用docker就像使用一个快速快速轻量级的虚拟机一样简单。
docker的设计思想:
docker的思想来源于集装箱,在一艘大船上可以把货物规整的摆放起来,并且各种各样的货物都被集装箱标准化了,集装箱和集装箱之间不会互相影响。
例如:不同的应用程序可能会有不同的运行环境,比如.net开发的网站和php开发的网站依赖的软件就不一样,如果把他们依赖的软件都安装在一个服务器上就要调试很久,不仅麻烦还可能造成某些冲突。常规来讲,我们也可以在服务器上创建不同的虚拟机来运行不同的应用,但是虚拟机开销比较高,docker可以实现虚拟机隔离应用环境的功能,并且开销比虚拟机更小。
在服务器负载方面,如果你单独开一个虚拟机,那么虚拟机就会占用空闲内存的,docker部署的话,这些内存就会被利用起来。
为什么要使用docker?
作为一种新兴的虚拟化方式,docker跟传统的虚拟化方式相比具有更多的优势。首先,docker容器的启动可以在秒级实现;其次,docker对系统资源的利用率很高,一台主机上可以同时运行数千个docker容器。
容器除了运行其中的应用外,基本不消耗额外的系统资源,使得应用的性能很高,同时系统的开销尽量小。
具体说来,docker在如下几个方面具有较大优势:
1、更快速的交付和部署
对于开发和运维人员来说,最希望的是一次创建或配置,可以在任何地方正常运行。开发者可以使用一个标准的镜像来构建一套开发容器,开发完成之后,运维人员可以直接使用这个容器来部署代码。docker可以快速构建容器,快速迭代应用程序,并且让整个过程全程可见,使团队中的其他成员更容易理解应用程序是如何创建和工作的。docker容器的启动时间是秒级的,大量节约开发、测试、部署的时间。
2、更轻松的迁移和拓展
docker容器几乎可以在任意的平台上运行,包括物理机、虚拟机、公有云、私有云、个人电脑、服务器等。这种兼容性可以让用户把一个应用程序从一个平台直接迁移到另外一个。
3、更简单的管理
使用docker,只需要小小的修改,就可以替代以往大量的更新工作。所有的修改都以增量的方式被分发和更新,从而实现自动化并且高效的管理。]
二、docker的下载和安装
1、相关网站:
官网:https://www.docker.com
仓库:https://hub.docker.com
2、docker安装前提说明
docker支持以下的centOS版本:CentOS7、CentOS6.5及以上版本。
docker运行在CentOS7上,要求系统为64位,系统内核为3.10以上,运行在CentOS6上,要求系统为64位,系统内核版本为2.6.31或更高版本。
查看自己的Linux内核版本:uname -r
3、进行docker安装
①确认Linux版本为CentOS7
命令:cat /etc/redhat-release
②yum在线安装gcc相关
命令:
yum -y install gcc
yum -y install gcc-c++
③在线安装docker及相关指令
安装:yum install docker
启动:systemctl start docker
查看版本:docker version
安装完毕!
④卸载docker
- 先停止docker:systemctl stop docker
- 输入命令进行卸载:yum -y remover docker
- 删除Linux中docker相关文件:rm -rf /var/lib/docker
基础命令说明:
docker images:列表显示当前docker引擎中的所有镜像
docker run -p 8080:80 -d docker.io/nginx:从docker仓库中下载nginx镜像并运行
下载nginx镜像命令解析:
run:表示运行某个镜像,变成一个容器。
-p:端口映射
8080:80:8080代表宿主机对外暴露的端口,80代表容器中的nginx服务器使用的端口
-d:表示后台运行
docker.io/nginx:代表要运行哪个镜像,可以改为nginx,docker会从仓库中下载最新的镜像进行运行,也可以改为镜像id。
docker pull 镜像名称:从docker仓库中下载nginx镜像
(run表示下载并运行,pull表示只下载镜像。)
三、docker镜像加速器配置
由于docker的仓库是在国外,我们在从仓库中拉取镜像服务的时候就非常缓慢,在此,我们可以参考阿里云的镜像加速器配置进行加速。
1、登录阿里云,搜索容器镜像服务。
2、根据操作修改/etc/docker/daemon.json配置文件
3、刷新配置文件并重启docker