Установка Kubernetes с Vagrant и CoreOS и небезопасным реестром Docker

Я выполнил действия, указанные на странице https://coreos.com/kubernetes/docs/latest/kubernetes-on-vagrant.html, чтобы запустить многоузловой кластер Kubernetes с использованием Vagrant и CoreOS.

Но я не смог найти способ установить небезопасный реестр докеров для этой среды. Чтобы быть более конкретным, когда я бегу

kubectl run api4docker --image=myhost:5000/api4docker:latest --replicas=2 --port=8080

в этой настройке он пытается получить образ, думая, что это безопасный реестр. Но это небезопасно.

Я ценю любые предложения.


person turgos    schedule 23.06.2016    source источник
comment
Привет @turgos, я не уверен, кого вы имеете в виду, пытаясь получить изображение, думая, что это безопасный реестр. В любом случае, если вы войдете в узел и запустите docker pull, это сработает?   -  person caesarxuchao    schedule 24.06.2016
comment
Привет @caesarxuchao. Нет, это не работает, когда я вхожу в один из рабочих узлов и запускаю docker pull. Когда я это говорю, я имею в виду докер на рабочих кубернетах.   -  person turgos    schedule 24.06.2016


Ответы (1)


Вот как я решил проблему на данный момент. Я добавлю позже, если смогу автоматизировать это на Vagrantfile.

cd ./coreos-kubernetes/multi-node/vagrant

vagrant ssh w1 (и повторите эти шаги для w2, w3 и т. Д.)

cd /etc/systemd/system/docker.service.d

sudo vi 50-insecure-registry.conf

добавить строку ниже в этот файл

[Service]
Environment=DOCKER_OPTS='--insecure-registry="<your-registry-host>/24"'

после добавления этого файла нам нужно перезапустить службу докеров на этом воркере.

sudo systemctl stop docker
sudo systemctl daemon-reload
sudo systemctl start docker
sudo systemctl status docker

теперь docker pull должен работать на этом воркере.

docker pull <your-registry-host>:5000/api4docker

Попробуем еще раз развернуть наше приложение в кластере Kubernetes.

Выйдите из системы и вернитесь к своему хосту.

$ kubectl run api4docker --image=<your-registry-host>:5000/api4docker:latest --replicas=2 --port=8080 —env="SPRING_PROFILES_ACTIVE=production"

когда вы получите стручки, вы должны увидеть, что статус запущен.

$ kubectl get pods

NAME                          READY     STATUS    RESTARTS   AGE
api4docker-2839975483-9muv5   1/1       Running   0          8s
api4docker-2839975483-lbiny   1/1       Running   0          8s
person turgos    schedule 24.06.2016