docker容器是类似于vm一样的虚拟机,其性能要比VMware强,速度更快
有三大概念:容器,镜像,仓库
这是docker与VMware在架构上的不同:
这是它们之间的对比
1.镜像:
docker的镜像是创建容器的基础,类似于虚拟机的快照,可以把它理解为面向docker引擎的只读模板,可以使个centos环境,称作centos 镜像,MySQL的应用程序,称作MySQL镜像
docker提供了简单的机制来创建和更新现在的镜像,用户可以在网上下载新的镜像来使用
2.容器
容器是docker镜像创建起来的运行实例,可以被启动,停止和删除,容器之间并不影响,相对而言都是独立的,所以安全性比较高,我们可以把容器看成一个简易的Linux环境
3.仓库
集中保存docker镜像的地方,你也可以创建自己的镜像上传和发布到公有库或者私有库,这样的话,下次需要的时候,直接拉取下来就可以了
下一步,就是安装docker,
看我其它的博客就可以了,照做就可以装上
[root@localhost~]#systemctl start docker //开启docker服务
[root@localhost~]#systemctl enable docker //设置开机自启动
安装好的Docker系统有两个程序,Docker服务端和Docker客户端。其中Docker服务端是一个服务进程,负责管理所有容器。Docker客户端则扮演着Docker服务端的远程控制器,可以用来控制Docker的服务端进程。大部分情况下Docker服务端和客户端运行在一台机器上。
[root@localhost~]#docker version //查看docker版本
Client:Version:18.03.0-ceAPIversion:1.37Goversion:go1.9.4Gitcommit:0520e24Built:WedMar2123:09:152018OS/Arch:linux/amd64Experimental:falseOrchestrator:swarmServer:Engine:Version:18.03.0-ceAPIversion:1.37(minimumversion1.12)Goversion:go1.9.4Gitcommit:0520e24
下一步是搜索镜像
例如:搜索关键字为lamp的镜像的执行命令和结果如下:
[root@localhost~]#docker search lamp
下载镜像nickistre/centos-lamp的执行命令和结果如下:
[root@localhost~]#docker pull nickistre/centos-lamp
查看本地所有镜像的执行命令和结果如下:
[root@localhost~]#docker images
REPOSITORY:镜像属于的仓库;
TAG:镜像的标签信息,标记同一个仓库中的不同镜像;IMAGEID:镜像的唯一ID号,唯一标识一个镜像;
CREATED:镜像创建时间;
VIRTUALSIZE:镜像大小;
获取镜像nickistre/centos-lamp详细信息的执行命令和结果如下。
[root@localhost~]#docker inspect 0b8d572d1c7d
可以用docker tag命令来为本地的镜像添加新的标签
docker tag名称:[标签]新名称:[新标签]
删除镜像
要删除掉lamp:lamp镜像,可以使用如下命令:
[root@localhost~]#docker rmi lamp:lamp
Untagged:lamp:lamp
删除nickistre/centos-lamp镜像,它会删除整个镜像文件的所有层。
[root@localhost~]#docker rmi nickistre/centos-lamp
docker save -o存储文件名存储的镜像
例如:将存出本地的nickistre/centos-lamp镜像为文件lamp:
[root@localhost~]#docker save -o lamp nickistre/centos-lamp