分类: Web开发
2017-06-11 03:41:01
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低
从这个解释我们不知道大家有没有想到一个优点类似的东西,没错就是 Vagrant : ,那么这两个东西有什么区别咧?
从字面意思上来讲,这两个东西都可以实现虚拟化。Vagrant 是基于Virtualbox等虚拟机软件的实现的(Vagrant 本身并不提供虚拟技术,只是调用Virtualbox等提供的接口,进行虚拟机的管理),而Docker是基于LXC轻量级容器虚拟技术。一般我们用Vagrant来部署开发环境,Docker一般是部署生产环境,当然docker也可以部署开发环境了。但是Vagrant 部署生产环境就不行了,因为Docker比较轻量级,Vagrant就有点重
Web 应用的自动化打包和发布。
自动化测试和持续集成、发布。
在服务型环境中部署和调整数据库或其他的后台应用。
心动不如行动,让我们在实际体验中来感受其中的不同吧,安装步骤可以参考:
配置信息
环境:Vagrant启动的虚拟机
系统:Ubuntu 16.04
内存:2G
$ sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ software-properties-common
$ curl -fsSL | sudo apt-key add -
验证下
$ sudo apt-key fingerprint 0EBFCD88 pub 4096R/0EBFCD88 2017-02-22 Key fingerprint = 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88 uid Docker Release (CE deb)sub 4096R/F273FCD8 2017-02-22
$ sudo add-apt-repository \ "deb [arch=amd64] \ $(lsb_release -cs) \ stable"
$ sudo apt-get update $ sudo apt-get install docker-ce #ce版本,企业版需要付费的
特别注意,如果是安装在生产环境,你需要安装指定版本的,而不是最新版本的,操作如下
$ apt-cache madison docker-ce docker-ce | 17.03.1~ce-0~ubuntu-xenial | xenial/stable amd64 Packages docker-ce | 17.03.0~ce-0~ubuntu-xenial | xenial/stable amd64 Packages
$ sudo apt-get install docker-ce=
$ sudo docker run hello-world
执行如下命名就够啦
$ sudo apt-get purge docker-ce $ sudo rm -rf /var/lib/docker
sudo apt-get install docker
sudo yum install docker
安装文档:
官方文档: