Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。
Docker的应用场景
Web 应用的自动化打包和发布。
自动化测试和持续集成、发布。
在服务型环境中部署和调整数据库或其他的后台应用。
从头编译或者扩展现有的 OpenShift 或 Cloud Foundry 平台来搭建自己的 PaaS 环境。
docker能为我们带来什么?今天开发应用程序所需要的不仅仅是编写代码。在每个生命周期阶段,工具之间的多种语言,框架,体系结构以及不连续的接口都会带来极大的复杂性。Docker简化并加速了您的工作流程,同时使开发人员可以自由选择每个项目的工具,应用程序堆栈和部署环境进行创新。
不论是Windows还是Linux的Docker容器均受Docker工具和API支持,可帮助您构建更好的软件:
更快地上板,并避免浪费时间尝试建立开发环境,启动新实例并制作生产代码副本以在本地运行。
启用多语言开发并使用任何语言,堆栈或工具,而无需担心应用程序冲突。
通过将应用程序,配置和依赖项打包到一个隔离的容器中,消除了环境不一致和“在我的机器上工作”的问题。
减轻对应用程序安全性的担忧