docker部署不影响原来的服务器,docker的使用-docker的好处,为什么使用docker来部署服务器...
Docker的使用
Docker是一个轻量级的虚拟化解决方案,你可以实现秒级的虚拟机启动、非常轻量级的虚拟化。个人使用理解看来,它可以实现一个类似于版本管理Git一样的轻量化的状态保存。
Docker有两个非常重要的概念:镜像和容器。
镜像是呈载容器的实体,所有容器都是运行在镜像之上。用版本管理的角度来看,镜像就像是某一个节点,它可以派生出不同的分支,你可以在不同分支上做不同的事情。可以想象成一棵树,最基本的镜像是主树干,主树干可以分出旁支树干,而旁支树干可以分出更细的旁支,而树干上可以生长树枝。
比如,你使用Docker,从官方仓库下载一个ubuntu镜像,把它作为最基础的镜像。然后在上面运行一个容器,这个容器里下载Nginx,再以这个容器为基础生成一个新的镜像,以后这个镜像生成的容器就都是ubuntu+nginx为基础。但是你工作环境可能需要你使用Apache来工作,你也想有一个ubuntu+apache为基础的镜像,于是你可以使用最基础的ubuntu镜像运行一个容器,在里面下载安装Apache,然后以这个容器为基础,保存一个ubuntu+apache的镜像,以后在这个镜像基础上运行的所有容器都拥有了一个apache环境。
如何使用docker安装应用程序
Docker提供了一个可以运行你的应用程序的封套(envelope),或者说容器。它原本是dotCloud启动的一个业余项目,并在前些时候开源了。它吸引了大量的关注和讨论,导致dotCloud把它重命名到DockerInc。它最初是用Go语言编写的,它就相当于是加在LXC(LinuXContainers,linux器)上的管道,允许开发者在更高层次的概念上工作。
Docker扩展了Linux器(LinuxContainers),或着说LXC,通过一个高层次的API为进程单独提供了一个轻量级的虚拟环境。Docker利用了LXC,cgroups和Linux自己的内核。和传统的虚拟机不同的是,一个Docker器并不包含一个单独的操作系统,而是基于已有的基础设施中操作系统提供的功能来运行的。这里有一个Stackoverflow的答案,里面非常详细清晰地描述了所有Docker不同于纯粹的LXC的功能特性
Docker会像一个可移植的容器引擎那样工作。它把应用程序及所有程序的依赖环境打包到一个虚拟容器中,这个虚拟容器可以运行在任何一种Linux服务器上。这大大地提高了程序运行的灵活性和可移植性,无论需不需要许可、是在公共云还是私密云、是不是裸机环境等等。
Docker由下面这些组成:
1.Docker服务器守护程序(serverdaemon),用于管理所有的容器。
2.Docker命令行客户端,用于控制服务器守护程序。
3.Docker镜像:查找和浏览docker器镜像。