Docker容器
一句话 docker容器和一般虚机区别?能装游戏不?能打英雄联盟不?能装王者荣耀不?能安装迅雷不?能安装支付宝软件? 能装win10不?能装xp不,能装梦幻西游不?
很抱歉,docker 目前都不能干这些事情!Windows 应用几乎都不支持!!
那要他干啥???
Docker 容器技术目前主要用于开发环境部署代码,业务系统测试环境,大数据环境等,并非用于娱乐,听歌,购物!!
windows下能玩docker不?
可以,但docker 最好还是安装Linux里面。windows下目前支持的并不友好,一般都在在windows 下安装linux虚机(vmware workstation或者virtual box等),然后在虚机里面安装docker。
管理Docker 能像vmware 那样图形界面操作吗?是图形界面还是命令行?
目前没见过完全支持图形界面操作的docker,基本都是命令行!!
例如:docker run busybox /bin/echo xiaoge 运行名为xiaoge的虚拟机(容器)
例如:docker stop $xiaoge 停止名为xiaoge的虚拟机
例如:docker commit $xiaoge job1 将虚机保存为镜像
例如:docker run --name test -ti ubuntu /bin/bash
docker常用指令:
http://www.runoob.com/docker/docker-command-manual.html
http://cloud.51cto.com/art/201412/462905.htm
https://www.cnblogs.com/soar1688/p/6818199.html
注意:web应用、DB应用、Hadoop应用、消息队列 等等都是一套大的应用系统所包含的组件,Docker技术可以将这些应用分别打包(打包成一个容器,容器之间也可以互相调用),方便大型应用的分发和部署。 提高开发 、测试、 部署和运行效率。
二进位文件和依赖库:简称应用依赖库
2000 年的时候 FreeBSD 开发了一个类似于 chroot 的容器技术 Jails,这是最早期,也是功能最多的容器技术。Jails 英译过来是监狱的意思,这个“监狱”(用沙盒更为准确)包含了文件系统、用户、网络、进程等的隔离。
2001 Linux 也发布自己的容器技术 Linux VServer,2004 Solaris 也发布了 Solaris Containers,两者都将资源进行划分,形成一个个 zones,又叫做虚拟服务器。
2005 年推出 OpenVZ,它通过对 Linux 内核进行补丁来提供虚拟化的支持,每个 OpenVZ 容器完整支持了文件系统、用户及用户组、进程、网络、设备和 IPC 对象的隔离。
2007 年 Google 实现了 Control Groups( cgroups ),并加入到 Linux 内核中,这是划时代的,为后期容器的资源配额提供了技术保障。
2008 年基于 cgroups 和 linux namespace 推出了第一个最为完善的 Linux 容器 LXC。
2013 年推出到现在为止最为流行和使用最广泛的容器 Docker,相比其他早期的容器技术,Docker 引入了一整套容器管理的生态系统,包括分层的镜像模型,容器注册库,友好的 Rest API。
容器,轻量级虚拟化(普通虚拟化称之为重量级虚拟化),一个容器相当于一个精简的linux系统,有独立的ip地址,独立的帐户,可以独立启停,一般一个容器大概xM左右比虚机小的多
相比传统虚拟机:docker优势
① 秒级启动,像打开qq一样流畅
② 一台主机安装上千个容器,且互相隔离
③ 应用与系统解耦,不需要虚拟化层,共享底层系统内核,资源利用率更高
④公共镜像部署快,个头小迁移快
Docker 技术架构:容器引擎通过调用系统内核中的Namespace和control groups 来构建独立的容器实例。而Cgroup 和 namespace 都是Linux 内核的原生组件,因此容器技术是基于内核的轻量级虚拟化技术。其中cgroups 主要做资源控制 namespace 主要做访问隔离