Развертывание микросервисов Lagom в Kubernetes

Я пытаюсь развернуть микросервисы Lagom на Kubernetes, следуя примеру Chirper Lagom. Итак, согласно предоставленному руководству ссылка, я настроил kubernetes, установив Minikube и все хорошо.

Но когда я попытался создать образы Chirper Docker с помощью docker-maven-plugin fabric8, я получил следующую ошибку:

[ОШИБКА] Не удалось выполнить цель io.fabric8: docker-maven-plugin: 0.20.1: build (default-cli) в проекте friend-impl: Execution default-cli of goal io.fabric8: docker-maven-plugin: 0.20 .1: сбой сборки: нет данных, нет переменной среды DOCKER_HOST, нет доступных для чтения / записи '/var/run/docker.sock' или '//./pipe/docker_engine' и не настроен внешний поставщик, такой как машина Docker -> [Справка 1]

Кто-нибудь может помочь мне разобраться в этой ошибке? Спасибо.


person Imen    schedule 25.12.2017    source источник
comment
В основном это проблема с Docker CLI, который не может достичь Docker Engine. Поскольку вы используете Minikube, вы можете использовать команду eval $(minikube docker-env), чтобы интерфейс командной строки Docker указывал на механизм Docker в Minikube и создавал образы в виртуальной машине Minikube.   -  person Vishal Biyani    schedule 26.12.2017
comment
@VishalBiyani, я настроил minikube на другом ПК, поэтому я подумал, что мне нужно только установить Docker на свой ПК разработчика, чтобы создавать свои образы. Итак, это работа, когда я выполнил eval $ (minikube docker-env) и перестроил свой проект на ПК, который содержит minikube. Спасибо   -  person Imen    schedule 27.12.2017
comment
Я добавил это как ответ, чтобы другие могли извлечь из этого выгоду позже.   -  person Vishal Biyani    schedule 27.12.2017


Ответы (1)


[Обновление на основе обсуждений в комментариях]

Проблема здесь в том, что Docker CLI не может связаться с Docker Engine. Поскольку вы используете Minikube, вы можете указать Docker CLI на Docker Engine внутри Minikube. Это обеспечит создание образов внутри виртуальной машины minikube и их последующий запуск. Вы можете запустить команду:

eval $(minikube docker-env)

Эта команда установит параметры, необходимые Docker CLI для связи с движком Docker в Minikube, и он должен иметь возможность запускать команду, которая не работает для вас!

person Vishal Biyani    schedule 27.12.2017