moby/moby

GitHub: moby/moby

Moby 项目是一个模块化容器生态系统,用于构建和定制容器化系统。

Stars: 71692 | Forks: 18960

# Moby 项目 [![PkgGoDev](https://pkg.go.dev/badge/github.com/moby/moby/v2)](https://pkg.go.dev/github.com/moby/moby/v2) ![GitHub License](https://img.shields.io/github/license/moby/moby) [![Go Report Card](https://goreportcard.com/badge/github.com/moby/moby/v2)](https://goreportcard.com/report/github.com/moby/moby/v2) [![OpenSSF Scorecard](https://api.scorecard.dev/projects/github.com/moby/moby/badge)](https://scorecard.dev/viewer/?uri=github.com/moby/moby) [![OpenSSF Best Practices](https://www.bestpractices.dev/projects/10989/badge)](https://www.bestpractices.dev/projects/10989) ![Moby 项目标志](docs/static_files/moby-project-logo.png "The Moby Project") Moby 是由 Docker 创建的一个开源项目,旨在启用和加速软件容器化。 它提供了一套“乐高积木”式的工具组件,用于构建自定义基于容器的系统框架,并为所有容器爱好者和专业人士提供了一个实验和交流想法的地方。 组件包括容器构建工具、容器注册库、编排工具、运行时等,这些可以作为构建块与其他工具和项目结合使用。 ## 原则 Moby 是一个遵循强大原则的开放项目,旨在模块化、灵活,并对用户体验没有太强的意见。 它向社区开放,以帮助确定其方向。 - 模块化:该项目包括许多具有明确定义的功能和API的组件,它们可以协同工作。 - 包含电池但可替换:Moby 包含足够的组件来构建功能齐全的容器系统,但其模块化架构确保大多数组件可以通过不同的实现进行替换。 - 可用性安全:Moby 提供安全默认值,而不牺牲可用性。 - 开发者导向:API旨在功能强大且对构建强大工具有用。 它们不一定旨在作为最终用户工具,而是作为面向开发者的组件。 文档和用户体验旨在面向开发者而非最终用户。 ## 目标受众 Moby 项目旨在为工程师、集成人员和爱好者提供,他们希望修改、破解、修复、实验、发明和构建基于容器的系统。 这不是为寻找商业支持系统的人准备的,而是为希望与开源代码一起工作和学习的人准备的。 ## 与 Docker 的关系 Moby 项目中的组件和工具最初是 Docker 和社区为 Docker 项目构建的开源组件。 如果新项目符合社区目标,可以添加新项目。Docker 承诺将 Moby 作为 Docker 产品的上游使用。 然而,也鼓励其他项目使用 Moby 作为上游,并以不同的方式重用组件,所有这些用途都将得到同等对待。欢迎外部维护者和贡献者。 Moby 项目不是为了作为 Docker 产品的支持或功能请求的位置,而是作为贡献者工作于开源代码、修复错误和使代码更有用的地方。 发布由维护者、社区和用户支持,仅基于最大努力。对于需要企业或商业支持的客户,[Docker Desktop](https://www.docker.com/products/docker-desktop/) 和 [Mirantis Container Runtime](https://www.mirantis.com/software/mirantis-container-runtime/) 是这些用例的适当产品。 ## Go 模块 受支持的公共 Go 模块包括: | 模块 | 描述 | |---|---| | [`github.com/moby/moby/client`](client/) | Docker Engine API 的 Go 客户端 | | [`github.com/moby/moby/api`](api/) | 客户端和服务器之间共享的 API 类型 | 根模块 `github.com/moby/moby/v2` 是基于 Moby 构建容器引擎(如 Docker Engine)的代码库。 它仅生成二进制文件 - 它 **不打算作为 Go 库导入**,并且没有 API 稳定性保证。 ### 发布标签 Docker Engine 发布带有 **`docker-`** 前缀的标签(例如,`docker-v29.0.0` 对应 Docker Engine 29.0.0)。 这些标签仅用于从根模块构建 Docker Engine 二进制文件 - 它们不得通过 `go get` 消费。 `client` 和 `api` 模块使用自己的标签独立版本化(例如,`client/v1.x.x`,`api/v1.x.x`)。 ### 从 `github.com/docker/docker` 迁移 替换旧的导入路径: ``` - import "github.com/docker/docker/client" + import "github.com/moby/moby/client" - import "github.com/docker/docker/api/types" + import "github.com/moby/moby/api/types" ``` 请注意,v29 包含许多破坏性 API 变更(选项结构体、重命名的函数、移动的类型)。 有关 Go SDK 变更的完整列表,请参阅 [v29.0.0 发布说明](https://github.com/moby/moby/releases/tag/docker-v29.0.0)。 # 法律 *由我们的法律顾问提供。有关更多背景信息,请参阅此存储库中的[NOTICE](https://github.com/moby/moby/blob/master/NOTICE) 文档。* Moby 的使用和转让可能受到美国和其他政府某些限制。 确保您的使用和/或转让不违反适用法律是您的责任。 有关更多信息,请参阅 https://www.bis.doc.gov # 许可证 Moby 根据 Apache 许可证第 2 版许可。有关完整许可文本,请参阅 [LICENSE](https://github.com/moby/moby/blob/master/LICENSE)。
标签:API, DNS解析, Docker, EVTX分析, Go 语言, NIDS, 威胁情报, 安全, 安全防御评估, 容器化, 容器化创新, 容器化工具, 容器化平台, 容器化框架, 容器化社区, 容器化解决方案, 容器技术, 容器构建工具, 容器注册中心, 容器管理, 开发者工具, 开源许可, 开源项目, 数据管道, 日志审计, 模块化, 灵活性, 社区驱动, 系统架构, 编排工具, 请求拦截, 超时处理, 软件容器, 软件容器化生态系统, 软件工程, 软件构建块, 运行时