源码构建


本节提供有关从源代码构建k3的说明。

查看release 页面以获取预构建的发行版本。

快速克隆代码

git clone --depth 1 https://github.com/rancher/k3s.git
1

运行make构建完整版本的二进制文件,文件生成路径:./dist/artifacts/k3s

(可选)在不运行linting或构建docker映像的情况下构建二进制文件:

./scripts/download && ./scripts/build && ./scripts/package-cli
1

对于开发,需要安装go 1.12版本并配置GOPATH。要编译二进制文件,请运行:

go build -o k3s
go build -o kubectl ./cmd/kubectl
go build -o hyperkube ./vendor/k8s.io/kubernetes/cmd/hyperkube
1
2
3

这将创建主要的可执行文件,但它不包括像containerd、CNI等依赖项。要运​​行具有所有依赖项的server和agent以进行开发,请运行以下脚本:

# Server
./scripts/dev-server.sh

# Agent
./scripts/dev-agent.sh
1
2
3
4
5

1. Kubernetes Source

Kubernetes的源代码在vendor/中,复制的位置在./vendor.conf中。转到引用的repo/tag,您将发现所有应用于上游Kubernetes的补丁。