Spring Could Windows打包构建docker镜像到linux

349 阅读1分钟

1、工程结构

2、Pom配置

 <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>0.4.13</version>
                <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>
            </plugin>
        </plugins>
    </build>

yml配置信息

server:
  port: 8761

eureka:
  instance:
    prefer-ip-address: true
  client:
    registerWithEureka: false
    fetchRegistry: false

3、Dockerfile信息

FROM kdvolder/jdk8
VOLUME /tmp
ADD server-0.0.1-SNAPSHOT.jar server.jar
RUN bash -c 'touch /server.jar'
ENTRYPOINT ["java","-jar","/server.jar"]
EXPOSE 8761

4、修改远程Linux服务器docker配置

编辑docker.service文件,开启远程调用

vi /usr/lib/systemd/system/docker.service

在ExecStart追加-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

重启docker服务

service docker restart

查看端口是否启动

curl 127.0.0.1:2375/info

如果出现一连串信息则代表成功

5、Windows增加DOCKER_HOST环境变量

tcp后面的IP填写linux访问IP

6、Maven打包构建

cd 到工程模块下执行下面的打包命令

mvn package docker:build

到此为成功了,赶紧去你的项目吧