注意:go版本和kubebuilder版本需要兼容 如下go env 參數一定要修改 CGO_ENABLED="0" GO111MODULE="on" 本機環境 centos 7.9 amd64, go1.17 和kubebuilder v3.4.1 一、下載安裝 (1)安裝 kubebuilder wget https://github.com/kubernetes-sigs/kubebuilder/releases/download/v3.4.1/kubebuilder_linux_amd64 mv kubebuilder_linux_amd64 kubebuilder chmod +x kubebuilder && mv kubebuilder /usr/local/bin/ (2)安裝kustomize curl -Lo ./kustomize https://github.com/kubernetes-sigs/kustomize/releases/download/v3.2.0/kustomize_3.2.0_linux_amd64 chmod +x ./kustomize sudo mv kustomize /usr/local/bin 二、初始化 kubebuilder init --domain cloud.com --owner "yuanqh" --skip-go-version-chec 三、創建api kubebuilder create api --group hft --version v1 --kind VirtualMachine
1.遇到的錯誤提示:
/usr/local/go/src/net/cgo_linux.go:13:8: no such package located
Error: not all generators ran successfully
run `controller-gen object:headerFile=hack/boilerplate.go.txt paths=./... -w` to see all available markers, or `controller-gen object:headerFile=hack/boilerplate.go.txt paths=./... -h` for usage
make: *** [Makefile:48: generate] Error 1
Error: failed to create API: unable to run post-scaffold tasks of "base.go.kubebuilder.io/v3": exit status 2
瀏覽/usr/local/go/src/net/cgo_linux.go:13:8:
解決辦法:CGO_ENABLED="0"