Сборка Maven работает с графическим интерфейсом Docker, но не с двоичным - PullRequest
0 голосов
/ 12 сентября 2018

Я установил исполняемый файл Docker с brew install docker и вижу его в PATH из bash:

$ which docker
/usr/local/bin/docker

Я настроил приложение Spring Boot с этим Dockerfile:

FROM openjdk:8-jre
MAINTAINER ...

COPY dist /dist/
ARG JAR_FILE
COPY target/${JAR_FILE} /target/app.jar
EXPOSE 8080
CMD ["java", "-jar", "/target/app.jar"]

Когда у меня запущено приложение с графическим интерфейсом Docker, Maven создает приложение, и я могу запустить его и посмотреть его локально. Но когда приложение Docker GUI не запущено, Maven не может собрать приложение, даже если оно находится в исполняемом файле bash, поскольку не может установить соединение с Docker:

$ mvn clean install
[INFO] Scanning for projects...
...
[WARNING] An attempt failed, will retry 1 more times
org.apache.maven.plugin.MojoExecutionException: Could not build image
...
Caused by: com.spotify.docker.client.exceptions.DockerException: java.util.concurrent.ExecutionException: com.spotify.docker.client.shaded.javax.ws.rs.ProcessingException: java.io.IOException: Connection refused
...
Caused by: java.util.concurrent.ExecutionException: com.spotify.docker.client.shaded.javax.ws.rs.ProcessingException: java.io.IOException: Connection refused
...
Caused by: com.spotify.docker.client.shaded.javax.ws.rs.ProcessingException: java.io.IOException: Connection refused
...
Caused by: java.io.IOException: Connection refused
...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 38.498 s
[INFO] Finished at: 2018-09-12T11:39:34+01:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal com.spotify:dockerfile-maven-plugin:1.4.4:build (default) on project econometer: Could not build image: java.util.concurrent.ExecutionException: com.spotify.docker.client.shaded.javax.ws.rs.ProcessingException: java.io.IOException: Connection refused -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

Использует ли Maven PATH, отличный от bash? Как я могу указать путь к исполняемому файлу докера для Maven?

1 Ответ

0 голосов
/ 12 сентября 2018

Docker использует архитектуру клиент-сервер, а приложение «кит» предоставляет половину «сервера».На Mac вам нужно запустить приложение для настольного компьютера (или более тяжелую виртуальную машину, например, предоставляемую Docker Machine или minikube), чтобы использовать любые команды Docker или иным образом взаимодействовать с Docker.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...