Kubernetes 系列 - 2. 源码目录说明

108 阅读1分钟

2. 源码目录说明

2.1 源码基本信息

2.1.1 github地址

k8s生态相关组件源码地址为:

2.2 源码目录说明

2.2.1 Kubernetes

主要目录及其说明如下:

目录名称说明
api存放 OpenAPI/Swagger 的 spec 文件,包括 JSON、Protocol 的定义等。
build存放构建相关的脚本,包括 Kubernetes 内部组件编译的脚本以及制作 Docker 镜像的 Dockerfile 等。
cmd存放可执行文件的入口代码,每一个可执行文件都会对应有一个 main 函数,包含各个 K8s 组件的入口,如 kube-apiserver、kube-controller-manager 等。
hack存放与构建、测试相关的脚本,包括编译、构建及校验的工具类。
pkg存放核心库代码,可被项目内部或外部直接引用,定义了许多基本的数据结构、函数和工具,是 Kubernetes 的主要代码存放类。
plugin存放 kubernetes 的插件,例如认证插件、授权插件等。
staging存放部分核心库的暂存代码,也就是还没有集成到 pkg 目录的代码,这里的代码都存放在独立的 repo 中,以引用包的方式添加到项目中。
test存放测试工具,以及测试数据。
third_party存放第三方工具、代码或其他组件,如 protobuf、golang-reflect 等。
vendor存放项目依赖的库代码,一般为第三方库代码。