KubeKey now allows users to create a container image registry (Docker registry or Harbor).
-
Initialize a local images registry:
./kk init registry [(-f | --filename) path]
-
Add information about the server used as the image registry to spec.hosts and spec.roleGroups in the KubeKey configuration file.
Example:
apiVersion: kubekey.kubesphere.io/v1alpha2 kind: Cluster metadata: name: sample spec: hosts: - {name: node1, address: 192.168.6.6, internalAddress: 192.168.6.6, password: Qcloud@123} roleGroups: etcd: - node1 control-plane: - node1 worker: - node1 ## Specify the node role as registry. Only one node can be set as registry. registry: - node1 controlPlaneEndpoint: ##Internal loadbalancer for apiservers #internalLoadbalancer: haproxy domain: lb.kubesphere.local address: "" port: 6443 kubernetes: version: v1.21.5 clusterName: cluster.local network: plugin: calico kubePodsCIDR: 10.233.64.0/18 kubeServiceCIDR: 10.233.0.0/18 # multus support. https://github.com/k8snetworkplumbingwg/multus-cni enableMultusCNI: false registry: ## `docker registry` is used to create local registry by default. ## `harbor` can be also set for type. # type: "harbor" privateRegistry: dockerhub.kubekey.local auths: "dockerhub.kubekey.local": username: admin password: Harbor12345 registryMirrors: [] insecureRegistries: [] addons: []