美文网首页
使用Maven构建Docker镜像

使用Maven构建Docker镜像

作者: x0e | 来源:发表于2019-08-29 11:12 被阅读0次

    环境: Maven 3.6.1 、Docker 19.03.1


    注: 这里需要使用到Docker环境,可以使用Windows本机安装Docker环境,也可以使用远程Docker环境,开启远程访问,可参考 Docker安装

    1.使用插件

    spotify 下有两个Docker构建插件:docker-maven-plugindockerfile-maven-plugin官方推荐使用后者

    #  dockerfile-maven-plugin(官方推荐使用)
    <plugin>
        <groupId>com.spotify</groupId>
        <artifactId>dockerfile-maven-plugin</artifactId>
    </plugin>
    
    2.环境变量

    若使用本机安装Docker环境构建,可忽略此步骤

    #在系统环境变量中添加名称为DOCKET_HOST
    DOCKER_HOST = tcp://ip:2375
    
    3.配置项目

    在pom.xml中添加如下:

    <plugin>
        <groupId>com.spotify</groupId>
        <artifactId>dockerfile-maven-plugin</artifactId>
        <version>1.4.12</version>
        <executions>
            <execution>
                <id>default</id>
                <phase>package</phase>    #绑定package,使用mvn package 命令可触发<goal>绑定的命令
                <goals>
                   <goal>build</goal>
                   <goal>push</goal>
                </goals>
            </execution>
        </executions>
        <configuration>
            <username>user</username>       #私有仓库用户名
            <password>password</password>   #私有仓库密码
            #远程仓库这里以阿里云镜像仓库为例
            <repository>registry.cn-hangzhou.aliyuncs.com/namespace/${project.artifactId}</repository>
            <tag>${project.version}</tag>
            <buildArgs>
                <JAR_FILE>${project.build.finalName}.jar</JAR_FILE>
            </buildArgs>
        </configuration>
    </plugin>
    

    在项目根目录添加DockerFile文件,内容如下:

    FROM java:8
    ARG JAR_FILE
    ADD target/${JAR_FILE} app.jar
    EXPOSE 8080
    ENTRYPOINT ["java","-jar","/app.jar"]
    
    4.构建项目
    #执行此命令会触发dockerfile build push命令
    mvn clean package
    

    查看docker镜像build成功,查看阿里云镜像仓库推送成功

    相关文章

      网友评论

          本文标题:使用Maven构建Docker镜像

          本文链接:https://www.haomeiwen.com/subject/eibbectx.html