优化配置 发布 crd controller 到集群

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

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

1
2
3
4
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
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
    spec:
      securityContext:
        runAsNonRoot: true
      containers:
      - command:
        - /manager
        args:
        - --leader-elect
        image: controller:latest
        name: manager

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