您还未登录! 登录 | 注册 | 帮助  

您的位置: 首页 > 软件开发专栏 > 开发技术 > 正文

让Docker日臻完善的8个优秀工具

发表于:2018-11-09 作者:布加迪编译 来源:51cto

一眨眼,你可能错过如今Docker领域最值得关注的动向之一。除了Docker本身的进步外,其他许多实用的项目都建立在Docker的基础上,或者得到Docker的支持。在许多情况下,这些工具充分利用了Docker实现的工作流技术和部署策略。

让Docker日臻完善的8个优秀工具

下面这8个开源项目得益于Docker或者为Docker提供助益,将Docker用于特定用例或者让Docker更易于使用。

1.Dusty

Dusty是一种基于Docker的、采用MIT许可证的开发环境,旨在改进使用Docker Compose或Vagrant来管理容器。比如说,Dusty背后的开发人员声称,Dusty的规范模式比Docker Compose更简单;它在处理这个方面胜过Vagrant:基于版本来隔离应用程序依赖项和服务更新。Dusty还允许将测试创建为环境规范的一部分,因而常见的多步骤程序可进入到易于调用的脚本中。

2.Gockerize

这个适合Go语言的爱好者。Gockerize是采用BSD许可证的工具,用于构建静态的Go二进制文件,并将它们打包成极简的Go容器。Gockerize由AeroFS背后的人员开发,包括这类功能:“能够自动为Golang标准库打一组补丁,虽然很少需要这项功能,却能派上大用场,”据介绍该项目的博文声称。Gockerize并不过于依赖外部,只依赖Go、Docker 1.5或更高版本以及Bash外壳。

3.Hyper

Hyper被誉为是“与虚拟机管理程序无关的工具,让你可以在任何虚拟机管理程序上运行Docker镜像”,它使用Docker、QEMU和Xen来实现其目的。该工具的开发者声称,Hyper使用极少资源(28MB),以容器而不是虚拟机的速度来启动,提供高性能,并为应用程序提供硬件执行的隔离机制。Hyper的一种提议用例是,创建多租户模式的、基于Docker的应用程序。

4.Docker Compose UI

Docker Compose UI是采用MIT许可证的项目,它为Docker Compose提供了基于Web的用户界面(UI),是使用Python的Flask框架构建的。容器可在本地运行,也可在远程主机上运行;​​Docker Compose UI本身在Docker容器中就有,以方便使用。请注意,“由于端口冲突”,Docker Compose UI附随的一些演示项目无法扩展。

5.Kitematic

有时你只想要一个GUI。Kitematic为你提供了在MacOS、Ubuntu Linux和Windows上管理Docker容器的GUI。Kitematic的其他便利之处包括:借助文件系统,自动揭示容器卷数据,为Docker提供内置的CLI,并自动同步状态以匹配针对Docker的更改(比如添加新的容器镜像时)。

6.Logspout

Unix界有着将小程序结合起来解决大问题的悠久传统。Logspout运用同样的理念来管理来自Docker容器的日志。Logspout将来自某个主机上所有容器的所有日志(主要是stdout和stderr)汇集到你认为最合适的任何目标。只需读取HTTP数据流,即可实时查看生成的聚合日志。

7.Elsy

Elsy被称为是“一种自成一体的、多语言的构建工具”, 使用Docker和Docker Compose。 Elsy让用户可以跨环境一致地构建软件仓库,并尽量减少执行构建任务所需要的工具,无论使用哪种语言。一项大力宣传的功能blackbox-test让任何构建的容器能够以体现在实际生产环境中使用的方式来加以测试。比如说,任何需要数据库的服务都会搭建好的数据库容器,用完后Elsy会自动拆除测试环境。

8.Habitus

另一个基于Docker的构建工具Habitus使用Dockerfile和build.yml文件,来创建包含众多任意命令的多步骤容器构建流程。可以做到构建流程的每个步骤依赖前面的某个步骤,确保任何棘手的多步骤依赖项都正常运行。Habitus还支持构建过程中添加秘密信息,而且这么做并不在镜像中留下痕迹。

原文标题:8 great tools that make Docker better,作者:Serdar Yegulalp