Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Maven Docker问题Java Spring引导无法执行目标io。fabric8:Docker Maven插件_Spring_Spring Boot_Containers_Cloud_Gcloud - Fatal编程技术网

Maven Docker问题Java Spring引导无法执行目标io。fabric8:Docker Maven插件

Maven Docker问题Java Spring引导无法执行目标io。fabric8:Docker Maven插件,spring,spring-boot,containers,cloud,gcloud,Spring,Spring Boot,Containers,Cloud,Gcloud,我正在尝试创建Spring引导容器,但遇到了一些问题: 这就是我在运行Debian的gcloud上的计算引擎vm上遇到的错误 我运行的命令是 maven clean install 我尝试过谷歌搜索这些问题,但大多数答案都与docker安装不当有关,事实并非如此: 运行docker hello world示例成功了,我不确定问题出在哪里 [INFO] [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ dockbo

我正在尝试创建Spring引导容器,但遇到了一些问题:

这就是我在运行Debian的gcloud上的计算引擎vm上遇到的错误

我运行的命令是

maven clean install
我尝试过谷歌搜索这些问题,但大多数答案都与docker安装不当有关,事实并非如此:

运行docker hello world示例成功了,我不确定问题出在哪里

[INFO] 
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ dockboot ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 5 source files to /home/jeffpascal96/docker_boot/target/classes
[INFO] 
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ dockboot ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /home/jeffpascal96/docker_boot/src/test/resources
[INFO] 
[INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ dockboot ---
[INFO] No sources to compile
[INFO] 
[INFO] --- maven-surefire-plugin:2.18.1:test (default-test) @ dockboot ---
[INFO] No tests to run.
[INFO] 
[INFO] --- maven-jar-plugin:2.6:jar (default-jar) @ dockboot ---
[INFO] Building jar: /home/jeffpascal96/docker_boot/target/dockboot-0.2-SNAPSHOT.jar
[INFO] 
[INFO] --- spring-boot-maven-plugin:1.5.13.RELEASE:repackage (default) @ dockboot ---
[INFO] 
[INFO] --- docker-maven-plugin:0.31.0:build (build-docker-image) @ dockboot ---
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] Total time: 13.392 s
[INFO] Finished at: 2019-09-15T11:46:23+00:00
[INFO] Final Memory: 32M/78M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal io.fabric8:docker-maven-plugin:0.31.0:build (build-docker-image) on project dockboot
: Execution build-docker-image of goal io.fabric8:docker-maven-plugin:0.31.0:build failed: No <dockerHost> given, n
o DOCKER_HOST environment variable, no read/writable '/var/run/docker.sock' or '//./pipe/docker_engine' and no exte
rnal provider like Docker machine configured -> [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/PluginExecutionException
  • 安装docker机器:
  • 创建docker机器
  • mvn清理安装docker:build-Ddocker.host=$docker\u主机
  • 安装docker机器:
  • 创建docker机器
  • mvn清理安装docker:build-Ddocker.host=$docker\u主机

  • 如果您不熟悉使用spring boot创建docker映像,我建议您使用插件,而不是spotify/docker maven插件(现在处于非活动状态)、spotify/docker maven、JIB、boost maven插件(以spring boot为中心)、fabric8io/docker maven插件

    根据:


    “Jib是一个快速简单的容器映像生成器,它处理将应用程序打包到容器映像中的所有步骤。它不需要您编写Dockerfile或安装docker,而且它直接集成到Maven和Gradle中——只需将插件添加到您的构建中,您就可以很快将Java应用程序容器化。“

    如果您不熟悉使用spring boot创建docker映像,我建议您使用插件,而不要使用spotify/docker maven插件(现在处于非活动状态)、spotify/docker maven、JIB、boost maven插件(以spring boot为中心)、fabric8io/docker maven插件

    根据:

    “Jib是一个快速简单的容器映像生成器,它处理将应用程序打包到容器映像中的所有步骤。它不需要您编写Dockerfile或安装docker,它直接集成到Maven和Gradle中-只需将插件添加到您的构建中,您就可以立即将Java应用程序容器化。”

    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
            <modelVersion>4.0.0</modelVersion>
            <groupId>javatechy</groupId>
            <artifactId>dockboot</artifactId>
            <version>0.2-SNAPSHOT</version>
            <packaging>jar</packaging>
            <name>dockboot</name>
            <description>Demo project for Dockerized Spring boot</description>
            <parent>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-parent</artifactId>
                    <version>1.5.13.RELEASE</version>
                    <relativePath /> <!-- lookup parent from repository -->
            </parent>
            <properties>
                    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
                    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
                    <java.version>1.8</java.version>
                    <docker.registry>javatechy</docker.registry>
            </properties>
            <scm>
                    <connection>scm:git:https://javatechy@github.com/javatechy/docker_boot.git</connection>
                    <developerConnection>scm:git:https://javatechy@github.com/javatechy/docker_boot.git</developerConne
    ction>
                    <tag>HEAD</tag>
            </scm>
            <dependencies>
                    <dependency>
                            <groupId>org.springframework.boot</groupId>
                            <artifactId>spring-boot-starter-actuator</artifactId>
                    </dependency>
                    <dependency>
    
    FROM javatechy/openjdk-8-slim
    MAINTAINER Deepak Kumar <deepak.kumar.iet@gmail.com>
    ENV ENV_NAME local
    ENV BOOTAPP_JAVA_OPTS -Xms256m -Xmx256m
    ENV LOG_PATH "/var/log/casa"
    ENV BOOTAPP_USR="root" BOOTAPP_GROUP="root" BOOTAPP_PATH="/app.jar"
    ENV SERVER_PORT 8000
    EXPOSE $SERVER_PORT
    COPY wrapper.sh /wrapper.sh
    RUN chmod 555 /wrapper.sh
    USER root
    COPY maven/app.jar $BOOTAPP_PATH
    RUN chmod 555 $BOOTAPP_PATH && \
                touch $BOOTAPP_PATH
    RUN mkdir $LOG_PATH            
    RUN chmod 777 $LOG_PATH && touch $LOG_PATH 
    USER $BOOTAPP_USR
    # RUN cat ./newrelic/newrelic.yml | sed -e 's/app_name:.*/app_name: docker_boot/' > ./newrelic/newrelic.yml
    
    ENTRYPOINT ["/wrapper.sh"]
    
    #!/usr/bin/env bash
    exec java -javaagent:./newrelic/newrelic.jar -Djava.security.egd=file:/dev/./urandom $BOOTAPP_JAVA_OPTS -jar -Dspri
    ng.profiles.active=$ENV_NAME $BOOTAPP_PATH --server.port=$SERVER_PORT > /dev/stdout 2>&1
    
    base=https://github.com/docker/machine/releases/download/v0.16.0 &&
      curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/tmp/docker-machine &&
      sudo mv /tmp/docker-machine /usr/local/bin/docker-machine &&
      chmod +x /usr/local/bin/docker-machin