从零开始写一个 kubebuilder
Toggle Dark/Light/Auto modeToggle Dark/Light/Auto modeToggle Dark/Light/Auto modeBack to homepage

03 Deploy Crd Controller

发布 crd controller

  1. 设置 docker server 网络代理, 避免编译的时候下载所依赖的 gcr.io 镜像失败。 参考文章 设置 docker server 网路代理

  2. 修改 Makefile, 设置默认 image name

VERSION ?= v$(shell cat .version)

# Image URL to use all building/pushing image targets
IMG ?= cr.docker.tangx.in/jtredis/controller:$(VERSION)
  1. 修改镜像 pull 策略。 在 /config/manager/manager.yaml 配置文件中, 添加 imagePullPolicy 策略。 由于本地开发, 并不准备上传到云上, 所以设置为 IfNotPresent
    spec:
      securityContext:
        runAsNonRoot: true
      containers:
      - command:
        - /manager
        args:
        - --leader-elect
        image: controller:latest
        name: manager

        ## 由于不上传到镜像仓库, 所以这里以本地编译的版本为准
        imagePullPolicy: IfNotPresent
  1. 执行编译
make docker-build 
  1. 发布
make deploy