尝试使用https://github.com/spotify/docker-maven-plugin指南和Spring启动码头指南构建maven-docker项目:https://spring.io/guides/gs/spring-boot-docker/
当我从中运行$ mvn clean package docker:build
时
'Docker Quickstart Terminal'我收到错误:
[ERROR] Failed to execute goal com.spotify:docker-maven-plugin:0.3.9:build (default-cli) on project functionrepo: Exception caught: Request error: POST https://192.168.99.100:2376/build?t=functionrepo: 500: HTTP 500 Internal Server Error -> [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
此错误在指南中解释:
InternalServerErrorException:HTTP 500内部服务器错误
问题:构建Docker镜像时,Maven会输出一个带有堆栈跟踪的异常,如:
引起:com.spotify.docker.client.shaded.javax.ws.rs.InternalServerErrorException:HTTP 500内部服务器错误 docker-maven-plugin使用HTTP Remote API与本地Docker守护程序通信,并且守护程序遇到的任何意外错误都将报告为500内部服务器错误。
检查Docker守护程序日志(通常位于/var/log/docker.log或/var/log/upstart/docker.log)以获取更多详细信息。
但我找不到docker.log文件,似乎没有创建。我在整个Windows系统中搜索了这个文件。
我可以使用“Docker Quickstart终端”进行构建,还是需要将我的项目加载到docker VM并从那里构建?
如何解决此问题或开启日志记录?
这是我的maven配置:
<plugin>
<groupId>com.spotify</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>0.3.9</version>
<configuration>
<imageName>functionrepo</imageName>
<dockerDirectory>src/main/docker</dockerDirectory>
<resources>
<resource>
<targetPath>/</targetPath>
<directory>${project.build.directory}</directory>
<include>${project.build.finalName}.jar</include>
</resource>
</resources>
</configuration>
</plugin>
[..]
<properties>
<!-- The main class to start by executing java -jar -->
<start-class>common.WebApplicationDriver</start-class>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<java.version>1.8</java.version>
<docker.image.prefix>springio</docker.image.prefix>
</properties>
更新:
$ docker-machine active
default
$ docker-machine env default
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://192.168.99.100:2376"
export DOCKER_CERT_PATH="C:\Users\aR\.docker\machine\machines\default"
export DOCKER_MACHINE_NAME="default"
# Run this command to configure your shell:
# eval $("C:\Program Files\Docker Toolbox\docker-machine.exe" env default)
正在运行:$ mvn clean package docker:build
返回相同的错误
更新2:
我遇到了这个错误:https://github.com/docker/docker-py/issues/730将重命名的DockerFile修复为dockerfile
答案 0 :(得分:1)
但我找不到docker.log文件,似乎没有创建。我已在整个Windows系统中搜索此文件。
在Windows文件系统上查找该文件毫无意义,因为Docker守护程序无法在Windows上运行。
当您使用Docker Toolbox时, Docker引擎(或守护程序)在使用VirtualBox创建的虚拟机中运行。如果您要查找此文件,则必须在该虚拟机文件系统中进行搜索。