Skip to content

Commit ead946e

Browse files
committed
Add containerd registry override folder (docker mirror)
1 parent 4267517 commit ead946e

File tree

2 files changed

+29
-3
lines changed

2 files changed

+29
-3
lines changed

k8s/v1/containerd.sls

+18-2
Original file line numberDiff line numberDiff line change
@@ -43,12 +43,28 @@ containerd:
4343
cmd.run:
4444
- name: |
4545
containerd config default > /etc/containerd/default.toml.tmp \
46-
&& python3 -c 'import toml; v = toml.load("/etc/containerd/default.toml.tmp"); v["plugins"]["io.containerd.grpc.v1.cri"]["containerd"]["runtimes"]["runc"]["options"]["SystemdCgroup"] = True; v["root"] = "/srv/containerd/"; s = toml.dumps(v); print(s);' > /etc/containerd/config.toml && rm /etc/containerd/default.toml.tmp
46+
&& python3 -c 'import toml; v = toml.load("/etc/containerd/default.toml.tmp"); v["plugins"]["io.containerd.grpc.v1.cri"]["containerd"]["runtimes"]["runc"]["options"]["SystemdCgroup"] = True; v["root"] = "/srv/containerd/"; v["plugins"]["io.containerd.grpc.v1.cri"]["registry"]["config_path"] = "/etc/containerd/certs.d/";s = toml.dumps(v); print(s);' > /etc/containerd/config.toml && rm /etc/containerd/default.toml.tmp
4747
- unless:
48-
- python3 -c 'import toml, sys; v = toml.load("/etc/containerd/config.toml"); sys.exit(v["plugins"]["io.containerd.grpc.v1.cri"]["containerd"]["runtimes"]["runc"]["options"]["SystemdCgroup"] != True or v["root"] != "/srv/containerd/");'
48+
- python3 -c 'import toml, sys; v = toml.load("/etc/containerd/config.toml"); sys.exit(v["plugins"]["io.containerd.grpc.v1.cri"]["containerd"]["runtimes"]["runc"]["options"]["SystemdCgroup"] != True or v["root"] != "/srv/containerd/" or v["plugins"]["io.containerd.grpc.v1.cri"]["registry"]["config_path"] != "/etc/containerd/certs.d/");'
4949
- watch_in:
5050
- service: containerd
5151
52+
/etc/containerd/certs.d/:
53+
file.directory:
54+
- require:
55+
- service: containerd
56+
57+
{%- for mirror in salt['pillar.get']("containerd:oci mirrors", {}) %}
58+
59+
/etc/containerd/certs.d/{{ mirror }}/hosts.toml:
60+
file.managed:
61+
- contents_pillar: containerd:oci mirrors:{{ mirror }}:content
62+
- makedirs: true
63+
- watch_in:
64+
- service: containerd
65+
66+
{%- endfor %}
67+
5268
/etc/crictl.yaml:
5369
file.managed:
5470
- contents: |

pillar.example.yaml

+11-1
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ k8s:
6262
chart: metallb/metallb
6363
namespace: metallb-system
6464
flags:
65-
- create-namespace
65+
- create-namespace
6666

6767
cert-manager:
6868
repo:
@@ -112,3 +112,13 @@ k8s:
112112
- securityContext.runAsGroup=0
113113
- securityContext.runAsNonRoot=false
114114
- securityContext.runAsUser=0
115+
116+
containerd:
117+
oci mirrors:
118+
docker.io:
119+
content: |
120+
server = "https://docker.io"
121+
122+
[host."http://my.local.registry.for.docker.io:5000"]
123+
capabilities = ["pull", "resolve"]
124+
skip_verify = true

0 commit comments

Comments
 (0)