Docker 社区的 10 个酷炫工具

还没有读者喜欢这篇文章。
Open Source Yearbook image 2015

Opensource.com

回顾 2015 年,Docker 社区创建了许多项目,提升了开发人员的体验。尽管在众多优秀贡献中做出选择很困难,但如果您正在寻找扩展 Docker 知识和使用的方法,以下是您应该使用的 10 个“酷炫工具”。

1. 容器迁移工具 (CMT)

作为 Docker 全球黑客日 #3 的获奖作品容器迁移团队的灵感来自于 DockerCon 的一次演讲,其中 Michael Crosby (@crosbymichael) 和 Arnaud Porterie (@icecrime) 在全球范围内迁移了一个 Quake 3 容器,演示了在保持 TCP 连接的同时进行容器迁移。CMT 项目创建了一个外部命令行工具,可以与 Docker 或 runC 一起使用,通过执行迁移前验证并允许自动发现合适的目标主机,来帮助在不同主机之间“实时迁移”容器。

2. Dockercraft

我们必须加入一个有趣的工具!许多 Docker 用户在容器中运行自定义的 Minecraft 服务器。而 Dockercraft 是一个 Minecraft 客户端,用于可视化和管理 Docker 容器。只需拨动开关,容器即可开启或关闭。只需按下按钮,您就可以销毁一个容器。Dockercraft 是一个有趣的项目——而且非常容易让人上瘾——由 Docker 工程师 Adrien Duermael 和 Gaetan de Villele 开发。

3. Docker 标签检查器

Docker 标签检查器工具帮助确保开发人员在使用 Docker 镜像时,提供了在互联网上分发时所需的元数据容器。具体来说,此工具使开发人员能够使用 Docker 标签 在容器技术领域内创建元数据,根据官方标签模式检查标签,并根据提供的 JSON 模式进行验证。

4. dvol

Dvol 实现了 Docker 中开发数据库的版本控制。Dvol 允许您 提交、 重置、 和 分支 在您的笔记本电脑上运行的容器化数据库,以便您可以轻松保存特定状态并在以后恢复。Dvol 还可以与 Docker Compose 集成,在您的笔记本电脑上启动可重现的微服务环境。

5. IPVS 守护程序 GORB

在 DockerCon EU 上展示的 Docker 容器 IP 虚拟服务器 (IPVS) 使用开源 IPVS 实现生产级别的负载均衡和请求路由,IPVS 已成为 Linux 内核的一部分十多年。它支持 TCP、SCTP 和 UDP,并且可以实现快速的速度,通常在直接连接速度的 5% 以内。其他功能包括 NAT、隧道和直接路由。为了使 IPVS 更易于使用,创建了 Go 路由和负载均衡 (GORB) 守护程序,作为 Docker 容器内的 REST API,为 Docker 提供 IPVS 路由。

6. libnetwork

Libnetwork 结合了 libcontainer 和 Docker Engine 的网络代码,创建了一个用于容器联网的多平台库。libnetwork 的目标是交付一个强大的容器网络模型,该模型为应用程序提供一致的编程接口和所需的网络抽象。有许多网络解决方案可用于满足广泛的用例。libnetwork 使用驱动程序/插件模型来支持所有这些解决方案,同时通过向用户公开简单且一致的网络模型来抽象驱动程序实现的复杂性。

7. Raspberry Pi 挑战

在 DockerCon 闭幕主题演讲中,来自 Hypriot 的 Dieter Reuter 展示了一个在 Raspberry Pi 2 设备上运行 500 个 Docker 容器的演示。Dieter 确信容器的数量至少可以翻一番,然后挑战 Docker 社区打破他的个人记录。作为他项目的一部分,Dieter Reuter 演示了如何在 Raspberry Pi 上开始使用 Docker,以及如何扩展可以驻留在单个 Raspberry Pi 2 上的容器中运行的 Web 服务器的数量。目前的记录是在单个 Raspberry Pi 2 上运行的容器中超过 2,500 个 Web 服务器。

8. 使用 Zoe 分析扩展 Spark

这个开源的用户友好工具将 Spark(一个用于大数据计算的数据密集型框架)和 Docker Swarm 结合在一起。Zoe 可以执行长时间运行的 Spark 作业,还可以执行 Scala 或 iPython 交互式笔记本和流式应用程序,涵盖完整的 Spark 开发周期。当计算完成时,资源会自动释放并可用于其他用途,因为所有进程都在 Docker 容器中运行。此工具可以在 Swarm 之上实现应用程序调度和优化的容器放置。

9. Unikernel 演示源代码

最初在 DockerCon EU 上作为一项酷炫的黑客技术亮相 (Unikernels, meet Docker!),这个 演示展示了如何将 unikernel 视为任何其他容器。在此演示中,Docker 用于构建 unikernel 微服务,然后部署一个真实的 Web 应用程序,其中包含数据库、Web 服务器和 PHP 代码,所有这些都作为使用 Rump Kernels 构建的不同 unikernel 微服务运行。Docker 管理 unikernel 就像管理 Linux 容器一样,但无需部署传统的操作系统。除了演示中显示的 MySQL、NGINX 和 PHP 与 Nibbleblog unikernel 之外,此存储库还包含一些入门示例。

10. Wagl,Swarm 的 DNS 服务发现

Wagl 是一个 DNS 服务器,允许作为容器在分布式 Docker Swarm 集群上运行的微服务相互查找和通信。Wagl 非常简洁,可以作为集群中的一个即插即用容器,通过轮换 DNS 记录中的 IP 地址列表来提供基于 DNS 的服务发现和简单的负载均衡。

User profile image.
Mano Marks 是 Docker, Inc. 的开发者关系总监。

2 条评论

这很有趣 - 容器迁移工具 (CMT) 位列第一,但您忘记提及您的工具中使用的 CRIU 项目。

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 许可。
© . All rights reserved.