mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-29 22:46:12 +00:00
Add Docker caching support to CoreOS' clusters.
a more idiomatic take on #4378. as a bonus, and to be nice on resources, an ultra lightweight docker-registry container is consumed. Signed-off-by: António Meireles <antonio.meireles@reformi.st>
This commit is contained in:
parent
39dceb13a5
commit
d6be2985ca
@ -104,6 +104,39 @@ coreos:
|
||||
ExecStartPre=/usr/bin/chmod +x /opt/bin/flanneld
|
||||
ExecStartPre=-/usr/bin/etcdctl mk /coreos.com/network/config '{"Network":"10.244.0.0/16", "Backend": {"Type": "vxlan"}}'
|
||||
ExecStart=/opt/bin/flanneld
|
||||
- name: docker-cache.service
|
||||
command: start
|
||||
content: |
|
||||
[Unit]
|
||||
Description=Docker cache proxy
|
||||
Requires=early-docker.service
|
||||
After=early-docker.service
|
||||
Before=early-docker.target
|
||||
|
||||
[Service]
|
||||
Restart=always
|
||||
TimeoutStartSec=0
|
||||
RestartSec=5
|
||||
Environment="TMPDIR=/var/tmp/"
|
||||
Environment="DOCKER_HOST=unix:///var/run/early-docker.sock"
|
||||
ExecStartPre=-/usr/bin/docker kill docker-registry
|
||||
ExecStartPre=-/usr/bin/docker rm docker-registry
|
||||
ExecStartPre=/usr/bin/docker pull quay.io/devops/docker-registry:latest
|
||||
ExecStart=/usr/bin/docker run --rm --net host --name docker-registry \
|
||||
-e STANDALONE=false \
|
||||
-e MIRROR_SOURCE=https://registry-1.docker.io \
|
||||
-e MIRROR_SOURCE_INDEX=https://index.docker.io \
|
||||
-e MIRROR_TAGS_CACHE_TTL=1800 \
|
||||
quay.io/devops/docker-registry:latest
|
||||
- name: docker.service
|
||||
drop-ins:
|
||||
- name: 51-docker-mirror.conf
|
||||
content: |
|
||||
[Unit]
|
||||
Requires=docker-cache.service
|
||||
After=docker-cache.service
|
||||
[Service]
|
||||
Environment=DOCKER_OPTS='--registry-mirror=http://$private_ipv4:5000'
|
||||
- name: kube-apiserver.service
|
||||
command: start
|
||||
content: |
|
||||
|
@ -34,20 +34,11 @@ coreos:
|
||||
ExecStart=/opt/bin/flanneld -etcd-endpoints http://<master-private-ip>:4001
|
||||
- name: docker.service
|
||||
command: start
|
||||
content: |
|
||||
[Unit]
|
||||
After=flannel.service
|
||||
Wants=flannel.service
|
||||
Description=Docker Application Container Engine
|
||||
Documentation=http://docs.docker.io
|
||||
|
||||
[Service]
|
||||
EnvironmentFile=/run/flannel/subnet.env
|
||||
ExecStartPre=/bin/mount --make-rprivate /
|
||||
ExecStart=/usr/bin/docker -d --bip=${FLANNEL_SUBNET} --mtu=${FLANNEL_MTU} -s=overlay -H fd://
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
drop-ins:
|
||||
- name: 51-docker-mirror.conf
|
||||
content: |
|
||||
[Service]
|
||||
Environment=DOCKER_OPTS='--registry-mirror=http://<master-private-ip>:5000'
|
||||
- name: setup-network-environment.service
|
||||
command: start
|
||||
content: |
|
||||
|
@ -104,6 +104,39 @@ coreos:
|
||||
ExecStartPre=/usr/bin/chmod +x /opt/bin/flanneld
|
||||
ExecStartPre=-/usr/bin/etcdctl mk /coreos.com/network/config '{"Network":"10.244.0.0/16", "Backend": {"Type": "vxlan"}}'
|
||||
ExecStart=/opt/bin/flanneld
|
||||
- name: docker-cache.service
|
||||
command: start
|
||||
content: |
|
||||
[Unit]
|
||||
Description=Docker cache proxy
|
||||
Requires=early-docker.service
|
||||
After=early-docker.service
|
||||
Before=early-docker.target
|
||||
|
||||
[Service]
|
||||
Restart=always
|
||||
TimeoutStartSec=0
|
||||
RestartSec=5
|
||||
Environment="TMPDIR=/var/tmp/"
|
||||
Environment="DOCKER_HOST=unix:///var/run/early-docker.sock"
|
||||
ExecStartPre=-/usr/bin/docker kill docker-registry
|
||||
ExecStartPre=-/usr/bin/docker rm docker-registry
|
||||
ExecStartPre=/usr/bin/docker pull quay.io/devops/docker-registry:latest
|
||||
ExecStart=/usr/bin/docker run --rm --net host --name docker-registry \
|
||||
-e STANDALONE=false \
|
||||
-e MIRROR_SOURCE=https://registry-1.docker.io \
|
||||
-e MIRROR_SOURCE_INDEX=https://index.docker.io \
|
||||
-e MIRROR_TAGS_CACHE_TTL=1800 \
|
||||
quay.io/devops/docker-registry:latest
|
||||
- name: docker.service
|
||||
drop-ins:
|
||||
- name: 51-docker-mirror.conf
|
||||
content: |
|
||||
[Unit]
|
||||
Requires=docker-cache.service
|
||||
After=docker-cache.service
|
||||
[Service]
|
||||
Environment=DOCKER_OPTS='--registry-mirror=http://$private_ipv4:5000'
|
||||
- name: kube-apiserver.service
|
||||
command: start
|
||||
content: |
|
||||
|
@ -22,7 +22,7 @@ coreos:
|
||||
command: start
|
||||
content: |
|
||||
[Unit]
|
||||
After=network-online.target
|
||||
After=network-online.target
|
||||
Wants=network-online.target
|
||||
Description=flannel is an etcd backed overlay network for containers
|
||||
|
||||
@ -34,20 +34,11 @@ coreos:
|
||||
ExecStart=/opt/bin/flanneld -etcd-endpoints http://<master-private-ip>:4001
|
||||
- name: docker.service
|
||||
command: start
|
||||
content: |
|
||||
[Unit]
|
||||
After=flannel.service
|
||||
Wants=flannel.service
|
||||
Description=Docker Application Container Engine
|
||||
Documentation=http://docs.docker.io
|
||||
|
||||
[Service]
|
||||
EnvironmentFile=/run/flannel/subnet.env
|
||||
ExecStartPre=/bin/mount --make-rprivate /
|
||||
ExecStart=/usr/bin/docker -d --bip=${FLANNEL_SUBNET} --mtu=${FLANNEL_MTU} -s=overlay -H fd://
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
drop-ins:
|
||||
- name: 51-docker-mirror.conf
|
||||
content: |
|
||||
[Service]
|
||||
Environment=DOCKER_OPTS='--registry-mirror=http://<master-private-ip>:5000'
|
||||
- name: setup-network-environment.service
|
||||
command: start
|
||||
content: |
|
||||
|
@ -49,22 +49,40 @@ coreos:
|
||||
ExecStartPre=/usr/bin/chmod +x /opt/bin/flanneld
|
||||
ExecStartPre=-/usr/bin/etcdctl mk /coreos.com/network/config '{"Network":"10.244.0.0/16", "Backend": {"Type": "vxlan"}}'
|
||||
ExecStart=/opt/bin/flanneld
|
||||
- name: docker.service
|
||||
- name: docker-cache.service
|
||||
command: start
|
||||
content: |
|
||||
[Unit]
|
||||
After=flannel.service
|
||||
Wants=flannel.service
|
||||
Description=Docker Application Container Engine
|
||||
Documentation=http://docs.docker.io
|
||||
Description=Docker cache proxy
|
||||
Requires=early-docker.service
|
||||
After=early-docker.service
|
||||
Before=early-docker.target
|
||||
|
||||
[Service]
|
||||
EnvironmentFile=/run/flannel/subnet.env
|
||||
ExecStartPre=/bin/mount --make-rprivate /
|
||||
ExecStart=/usr/bin/docker -d --bip=${FLANNEL_SUBNET} --mtu=${FLANNEL_MTU} -s=overlay -H fd://
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
Restart=always
|
||||
TimeoutStartSec=0
|
||||
RestartSec=5
|
||||
Environment="TMPDIR=/var/tmp/"
|
||||
Environment="DOCKER_HOST=unix:///var/run/early-docker.sock"
|
||||
ExecStartPre=-/usr/bin/docker kill docker-registry
|
||||
ExecStartPre=-/usr/bin/docker rm docker-registry
|
||||
ExecStartPre=/usr/bin/docker pull quay.io/devops/docker-registry:latest
|
||||
ExecStart=/usr/bin/docker run --rm --net host --name docker-registry \
|
||||
-e STANDALONE=false \
|
||||
-e MIRROR_SOURCE=https://registry-1.docker.io \
|
||||
-e MIRROR_SOURCE_INDEX=https://index.docker.io \
|
||||
-e MIRROR_TAGS_CACHE_TTL=1800 \
|
||||
quay.io/devops/docker-registry:latest
|
||||
- name: docker.service
|
||||
command: start
|
||||
drop-ins:
|
||||
- name: 51-docker-mirror.conf
|
||||
content: |
|
||||
[Unit]
|
||||
Requires=docker-cache.service
|
||||
After=docker-cache.service
|
||||
[Service]
|
||||
Environment=DOCKER_OPTS='--registry-mirror=http://$private_ipv4:5000'
|
||||
- name: kube-apiserver.service
|
||||
command: start
|
||||
content: |
|
||||
|
Loading…
Reference in New Issue
Block a user