Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口 。
以上是百度百科的介绍。 用自己的几句话概况下就是,docker提供了一种独立的应用软件的运行时,在这个容器中,不仅仅含有用户的软件应用,也包含了软件所依赖的运行时环境。即docker容器=软件+运行时环境。 比如,安装我们一个tomcat发布我们的webapp。按传统的方式,我们需要先安装JDK、再下载安装tomcat,然后我们还需要将我们开发完成的webapp部署到tomcat中,这样一个完整的流程走下来至少需要好几步,花费的时间也比较长。而且由于服务器上环境的复杂,一个服务器上所安装的JDK还可能有多种不同的版本(jdk7、jdk8)具体到我们配置tomcat还有需要考虑使用哪种jdk。 再比如,你安装一个nginx,nginx可能也需要依赖gcc、open-ssl等,而ssl 可能又依赖其他的系统软件... 我们可以看到由于软件安装所依赖的环境的复杂性,导致我们安装一个软件要考虑的东西越来越多,这些问题都是环境导致的。
docker就很好地解决了上面的问题,因为docker容器给我们提供不仅仅是软件本身,还包括了软件运行所依赖了运行环境,并且每个docker容器(软件+运行环境)都是各自独立的,它们不受外部服务器环境的影响(因为docker容器中内置了运行环境),并且它们之间也不会对彼此的环境产生影响。
docker可以安装在centos6.x (6系列必须6.5以上),或者centos7以上系列发行版本中。
推荐在centos7上安装使用docker (虽然6.5.上也可以安装docker,但由于6.5内核版本太低,缺失很多系统软件(或版本过低),导致在使用docker时会有很多麻烦)
这里笔者使用的是centos7.5 1804 (7系列的目前最新版),docker安装的过程也比较简单,需要注意的是:先关闭防火墙、禁用selinux 。
下面是docker安装过程。
1、关闭防火墙
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
2、关闭selinux
vi /etc/selinux/config
把 SELINUX=enforcing 注释掉:#SELINUX=enforcing ,然后新加一行为:SELINUX=disabled
保存退出。
source /etc/selinux/config
3、 开始安装docker
yum -y install docker-io #安装
4、启动、停止docker命令
service docker start
service docker stop
或者 cenos7中
systemctl start docker.service
systemctl stop docker.service
vi /etc/docker/daemon.json # 内容如下
{
"registry-mirrors": ["https://registry.docker-cn.com"]
}
或者使用163镜像亦可 ,
{
"registry-mirrors": ["http://hub-mirror.c.163.com"]
}
运行一个hello-world
docker pull hello-world # 拉取一个镜像
docker run hello-world # 运行容器(run时会生成一个镜像的容器实例)
上一篇:js中对象继承
下一篇:docker 命令入门
Copyright © 叮叮声的奶酪 版权所有
备案号:鄂ICP备17018671号-1