Skip to content

Commit 8e34b9f

Browse files
Adopt kind 0.31.0
Kind 0.31.0 brings a newer version of containerd which no longer supports configuring registry mirroes. Instead, we need to configure a `hosts.toml` file on all node containers per registry. This change configures the node to "resolve" `localregistry-docker-registry.default.svc.cluster.local:30050` to `localhost:30050` where `30050` is the twuni docker registry node port. References: https://kind.sigs.k8s.io/docs/user/local-registry/ https://github.com/containerd/containerd/blob/main/docs/cri/config.md#registry-configuration Co-authored-by: Georgi Sabev <georgethebeatle@gmail.com>
1 parent 93d54c8 commit 8e34b9f

File tree

3 files changed

+14
-13
lines changed

3 files changed

+14
-13
lines changed

INSTALL.kind.md

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -13,18 +13,16 @@ In order to install korifi on kind effortlessly we have prepared an installation
1313
In order to access the Korifi API, we'll need to [expose the cluster ingress locally](https://kind.sigs.k8s.io/docs/user/ingress/). To do it, create your kind cluster using a command like this:
1414

1515
```sh
16-
cat <<EOF | kind create cluster --name korifi --config=-
16+
REGISTRY_HOST="localregistry-docker-registry.default.svc.cluster.local:30050"
17+
REGISTRY_DIR="/etc/containerd/certs.d/$REGISTRY_HOST"
18+
19+
cat <<EOF | kind create cluster --name "korifi" --config=-
1720
kind: Cluster
1821
apiVersion: kind.x-k8s.io/v1alpha4
1922
containerdConfigPatches:
2023
- |-
2124
[plugins."io.containerd.grpc.v1.cri".registry]
22-
[plugins."io.containerd.grpc.v1.cri".registry.mirrors]
23-
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."localregistry-docker-registry.default.svc.cluster.local:30050"]
24-
endpoint = ["http://127.0.0.1:30050"]
25-
[plugins."io.containerd.grpc.v1.cri".registry.configs]
26-
[plugins."io.containerd.grpc.v1.cri".registry.configs."127.0.0.1:30050".tls]
27-
insecure_skip_verify = true
25+
config_path = "/etc/containerd/certs.d"
2826
nodes:
2927
- role: control-plane
3028
extraPortMappings:
@@ -38,6 +36,10 @@ nodes:
3836
hostPort: 30050
3937
protocol: TCP
4038
EOF
39+
40+
cat <<EOF | docker exec -i korifi-control-plane sh -c "mkdir -p '${REGISTRY_DIR}' && cat >'${REGISTRY_DIR}/hosts.toml'"
41+
[host."http://127.0.0.1:30050"]
42+
EOF
4143
```
4244

4345
## Install Korifi

scripts/assets/kind-config.yaml

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,7 @@ apiVersion: kind.x-k8s.io/v1alpha4
33
containerdConfigPatches:
44
- |-
55
[plugins."io.containerd.grpc.v1.cri".registry]
6-
[plugins."io.containerd.grpc.v1.cri".registry.mirrors]
7-
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."localregistry-docker-registry.default.svc.cluster.local:30050"]
8-
endpoint = ["http://127.0.0.1:30050"]
9-
[plugins."io.containerd.grpc.v1.cri".registry.configs]
10-
[plugins."io.containerd.grpc.v1.cri".registry.configs."127.0.0.1:30050".tls]
11-
insecure_skip_verify = true
6+
config_path = "/etc/containerd/certs.d"
127
nodes:
138
- role: control-plane
149
extraPortMappings:

scripts/deploy-on-kind.sh

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,6 +106,10 @@ function ensure_local_registry() {
106106
--set persistence.deleteEnabled=true \
107107
--set secrets.htpasswd='user:$2y$05$Ue5dboOfmqk6Say31Sin9uVbHWTl8J1Sgq9QyAEmFQRnq1TPfP1n2'
108108

109+
local registry_dir="/etc/containerd/certs.d/$LOCAL_DOCKER_REGISTRY_ADDRESS"
110+
cat <<EOF | docker exec -i "$CLUSTER_NAME-control-plane" sh -c "mkdir -p '$registry_dir' && cat >'$registry_dir/hosts.toml'"
111+
[host."http://127.0.0.1:30050"]
112+
EOF
109113
}
110114

111115
function install_dependencies() {

0 commit comments

Comments
 (0)