我们考虑使用开源工具来加速,促进,改进并有时优化Docker的工作。
Habitus
一个更开源的docker构建工具。使用Dockerfile文件和build.yml创建包含任意数量任意命令的多阶段容器程序集。程序集中的每个步骤都可以保持对某个先前步骤的依赖性,以确保任何复杂的多步依赖项的正确操作。 Habitus还支持在构建过程中包含秘密,并且这样做的方式是图像中没有任何痕迹。
Dockly
Docker工作的主要部分是通过CLI或终端执行的。 Docker的CLI没什么了不起的,与其他CLI程序没有区别。 Dockly为Docker提供全屏终端界面,所有正在运行的容器的仪表板,查看日志和实时使用统计信息,以及内置shell。
Dusty
Dusty - 具有MIT许可证的Docker支持的开发环境。旨在优化Docker Compose在Vagrant中的使用或容器管理。尘土飞扬的开发人员声称他们的产品具有比Docker Compose更简单的规范模型,可以处理应用程序依赖性隔离,并且还具有改进的(与Vagrant相比)更新系统。 Dusty允许您执行多步骤过程并为您的环境创建测试,作为规范的一部分。
Whalebrew
MacOS用户应该熟悉Homebrew,这是MacOS的特殊包管理系统。 Whalebrew允许您安装Docker镜像并通过别名直接从命令行运行它们,就好像它们是本地可执行文件一样。安装包很容易:
whalebrew安装<package_name>
whalebrew install <имя_пакета>
由Whalebrew控制的套餐效果最好。但理论上,任何通过CLI工作的Docker镜像也应该起作用。
Gockerize
BSD许可工具是在Go语言下开发的,用于创建静态二进制文件并将其打包到容器中。 Gockerize的一个关键特性是能够自动将补丁集应用于标准Golang库。 Gockerize需要Go,Docker 1.5+和Bash shell才能正常运行。
Hyper
此工具允许您像在管理程序上一样运行Docker镜像。 Hyper使用Docker,QEMU和Xen来实现其目标。开发人员声称Hyper使用最少量的资源(28 MB),以容器的速度加载,而不是虚拟机,为应用程序提供高性能和硬件隔离。 Hyper的一个用途是创建基于Docker的多用户应用程序。
Dive
Docker的图像看起来像一个不透明包装中的三明治:你并不总是知道有多少层,里面有什么。 Dive允许您通过交互式UI可视地浏览Docker镜像中的图层。您可以了解每个图层中存在的成分,以及确定每个图层如何影响相邻图层(添加或删除的内容)。您还可以分析图像是否存在空或重复空间,并将结果传输到CI管道,以便具有大量空白空间的图像不参与构建过程。
Kitematic
有时你只需要一个GUI。 Kitematic提供了一个图形界面,用于管理MacOS,Ubuntu Linux和Windows上的Docker容器。其他Kitematic工具:根据更改自动提供容器卷数据,内置CLI Docker和自动状态同步(例如,添加新图像时)。
Logspout
Unix世界有使用小程序解决重大问题的悠久传统。 Logspout在管理Docker容器日志时应用了相同的理念。该工具将特定主机上的容器的所有日志(stdout和stderr)传输到指定的目标。只需读取HTTP流即可实时查看生成的聚合日志。
Elsy和开源工具
Elsy被描述为使用Docker和Docker Compose的多功能,多语言构建工具。 Elsy允许您在不同环境中一致地创建存储库,并最小化执行程序集所需的工具,而不管PL。一个有趣的功能 - 黑盒测试允许你在“战斗”负载下测试任何容器,反映生产中的实际使用 - 给Elsy容器,他“很好地折磨他”。
Portainer
即使是最简单的Docker堆栈也可以包含许多组件:容器,图像,网络,卷,秘密。跟踪这一切非常困难。 Portainer为Docker环境提供Web界面,无论是单个主机还是群集,还提供所有使用资源的可视化。管理所有常见组件只需点击几下鼠标即可完成。最好的部分 - 所有这些都部署在一个单独的容器中的现有Docker基础架构中。
Docker Compose撰写UI
Docker Compose UI是一个项目(获得MIT许可),为Docker Compose提供Web界面,使用Flask平台用Python编写。容器可以在本地和远程运行,Docker Compose用户界面本身也可以在Docker容器中使用。该工具附带预先安装的演示项目,其中一些甚至可以扩展。