欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

IDEA基于Dockerfile自动构建镜像

程序员文章站 2024-01-28 08:44:10
...

1、准备工作

  • 操作系统:Windows10
  • docker版本:v19.03.8(基于Docker Desktop of Windows安装)
  • IDEA版本:2019.2.4

2、IDEA连接Docker环境

2.1、IDEA安装docker插件

IDEA基于Dockerfile自动构建镜像

 idea安装好docker插件之后需要重启,然后在idea配置docker环境之前,需要设置docker环境允许远程连接2375端口:

cmd以管理员身份运行:

netsh interface portproxy add v4tov4 listenport=2375 connectaddress=127.0.0.1 connectport=2375 listenaddress=your-public-ip protocol=tcp

(your-public-ip是主机当前的ipv4地址)

然后输入命令行:docker -H ip:2375 info可以查看docker的一些基本信息表示成功远程连接

IDEA基于Dockerfile自动构建镜像

 2.2、idea配置docker环境

IDEA基于Dockerfile自动构建镜像

3、新建spring boot项目

3.1、提供一个可访问的接口:

@RestController
public class DockerController {

    @GetMapping
    public String test() {
        return "idea-build-docker";
    }
}

3.2、dockerfile-maven-plugin插件配置

<!-- Dockerfile -->
            <plugin>
                <groupId>com.spotify</groupId>
                <artifactId>dockerfile-maven-plugin</artifactId>
                <version>1.4.10</version>
                <executions>
                    <execution>
                        <id>default</id>
                        <goals>
                            <goal>build</goal>
                            <goal>push</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <skip>false</skip>
                    <repository>${project.artifactId}</repository>
                    <tag>${project.version}</tag>
                    <buildArgs>
                        <JAR_FILE>${project.build.finalName}.jar</JAR_FILE>
                    </buildArgs>
                </configuration>
            </plugin>

3.3、Dockerfile文件的编写

FROM registry.yfb.sunline.cn/library/openjdk:8-jdk-alpine

MAINTAINER Sunline R&D

ARG JAR_FILE

COPY target/${JAR_FILE} ${JAR_FILE}

EXPOSE 8081

ENTRYPOINT ["java","-jar", "/idea-build-dockerfile-1.0.0.jar"]

Dockerfile文件的目录和pom.xml文件同层级

3.4、构建镜像

maven执行命令行:

  • mvn package
  • mvn dockerfile:build

3.5、查看镜像构建结果

IDEA基于Dockerfile自动构建镜像

3.6、IDEA运行镜像

IDEA基于Dockerfile自动构建镜像

IDEA基于Dockerfile自动构建镜像

3.7、配置容器映射端口

IDEA基于Dockerfile自动构建镜像

3.8、访问接口地址

IDEA基于Dockerfile自动构建镜像