这个问题是因为maven向docker仓库发送构建和推送的端口不是5000端口,正确的端口应该是配置文件中设置的端口,docker安装完成之后默认没有开启远程端口,需要手动修改配置文件开启远程端口。开启方法如下

 

 

我的系统是centos 7的

vi    /lib/systemd/system/docker.service

在ExecStart下,增加 -H tcp://0.0.0.0:2375

 

docker重新打包镜像 docker打包镜像时报405_maven

 

保存,然后输入以下命令,重新加载配置和重启

systemctl daemon-reload 
systemctl restart docker

关闭防火墙或者开放2375端口

到这里,应该就可以推送了

 

 

我的maven pom.xml配置如下

<properties>
        <java.version>1.8</java.version>
        <docker.image.prefix>192.168.0.105</docker.image.prefix>
    </properties>



    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>com.spotify</groupId>
                <artifactId>docker-maven-plugin</artifactId>
                <version>1.0.0</version>
                <configuration>
                    <dockerHost>http://${docker.image.prefix}:2375</dockerHost>
                    <imageName>${docker.image.prefix}:5000/${project.artifactId}</imageName>
                    <!--docker文件所在的目录-->
                    <dockerDirectory>./</dockerDirectory>
                    <resources>
                        <resource>
                            <targetPath>/</targetPath>
                            <directory>${project.build.directory}</directory>
                            <include>${project.build.finalName}.jar</include>
                        </resource>
                    </resources>
                </configuration>
            </plugin>
        </plugins>
    </build>

mvn clean package docker:build -DskipTests