0

Mac で Maven スプリング ブート プロジェクトの Docker イメージをビルドしようとし続けています。

ここに私のビルドセクションがあります:

<build>
    <plugins>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
            <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
             </executions>
      </plugin>
      <plugin>
  <groupId>com.spotify</groupId>
  <artifactId>docker-maven-plugin</artifactId>
       <configuration>
                    <imageName>${docker.image.prefix}/${project.artifactId}</imageName>
                    <dockerDirectory>src/main/docker</dockerDirectory>
                    <resources>
                        <resource>
                            <targetPath>/</targetPath>
                            <directory>${project.build.directory}</directory>
                            <include>${project.build.finalName}.jar</include>
                        </resource>
                    </resources>
                </configuration>
  <executions>
    <execution>
      <id>build-image</id>
      <phase>package</phase>
      <goals>
        <goal>build</goal>
      </goals>
    </execution>
    <execution>
      <id>tag-image</id>
      <phase>package</phase>
      <goals>
        <goal>tag</goal>
      </goals>
      <configuration>
        <image>my-image</image>
        <newName>registry.example.com/my-image</newName>
      </configuration>
    </execution>
  </executions>
</plugin>
    </plugins>
  </build>

このコマンドを実行すると: mvn -X package docker:build

次のエラーが表示されます。

 [ERROR] Failed to execute goal 
com.spotify:docker-maven-plugin:0.4.13:build (build-image) 
on project Spring-Boot-ReceiverAPI: Exception caught: 
Request error: 
POST unix://localhost:80/build?t=uptake/Spring-Boot-ReceiverAPI: 500: HTTP 500 Internal Server Error -> [Help 1]

ここに私のDOCKER_HOSTがあります:

echo $DOCKER_HOST
unix:///private/var/run/docker.sock

他のすべての docker コマンドは正常に実行されます。

docker images
REPOSITORY                   TAG                 IMAGE ID            CREATED             SIZE
<none>                       <none>              384ed96af950        4 hours ago         640.9 MB
java                         8                   96cddf5ae9f1        10 days ago         640.9 MB
containersol/minimesos-cli   0.10.2              0f8fd0fee007        8 weeks ago         133.7 MB

Docker デーモンは明らかに実行されており、DOCKER_HOST の値は通常の Docker コマンドに対して正常に動作するように見えます。

Docker ビルドを Mac で動作させるにはどうすればよいですか?

4

1 に答える 1

0

通常のユーザー アカウントで sudo を使用せずに docker コマンドを実行できるようにすることで、この問題を解決しました。POM のビルド セクションは次のとおりです。

<build>
    <plugins>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
            <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal>
                        </goals>
                    </execution>
             </executions>
      </plugin>
      <plugin>
  <groupId>com.spotify</groupId>
  <artifactId>docker-maven-plugin</artifactId>
       <configuration>
                    <imageName>${docker.image.prefix}/${project.artifactId}</imageName>
                    <dockerDirectory>src/main/docker</dockerDirectory>
                    <resources>
                        <resource>
                            <targetPath>/</targetPath>
                            <directory>${project.build.directory}</directory>
                            <include>${project.build.finalName}.jar</include>
                        </resource>
                    </resources>
                </configuration>
  <executions>
    <execution>
      <id>build-image</id>
      <phase>package</phase>
      <goals>
        <goal>build</goal>
      </goals>
    </execution>
    <execution>
      <id>tag-image</id>
      <phase>package</phase>
      <goals>
        <goal>tag</goal>
      </goals>
      <configuration>
        <image>api</image>
        <newName>registry.example.com/api</newName>
      </configuration>
    </execution>
  </executions>
</plugin>
    </plugins>
    <resources>       
        <resource>
            <directory>${basedir}/src/main/docker</directory>
            <filtering>true</filtering>
            <includes>
                <include>Dockerfile</include>
            </includes>
        </resource>
    </resources>
  </build>

通常のユーザー アカウントで正常に実行されるコマンドは次のとおりです。

mvn -X package docker:build
于 2016-10-05T18:15:28.793 に答える