java项目快速打包镜像到docker服务器

java项目快速打包镜像到docker服务器

环境准备

idea+java-maven项目

可以自己新建一个springboot项目,请自行百度,这里不再举例

Dockerfile

在springboot项目的 项目根目录下放一个Dockerfile文件,

文件内容如下

#基础镜像(这里配置的是从镜像私服拉取jdk8的镜像)
FROM 192.168.11.131:5000/myrepo/openjdk:8-jre
#作者信息
MAINTAINER thinkpet <[email protected]>
#系统编码
ENV LANG=C.UTF-8 LC_ALL=C.UTF-8
#声明一个挂载点,表示容器内此路径会映射到宿主机的某个目录
VOLUME /tmp

ARG JAR_FILE
#将maven构建后的jar复制到image里,名字改成了app.jar
ADD target/${JAR_FILE}  /app.jar
#暴露端口8913
EXPOSE  8913
#启动容器内app时的执行命令
ENTRYPOINT ["java","-Xmx128m","-Xms128m","-jar","/app.jar"]

dockerfile-maven-plugin

dockerfile-maven-plugin是
spotify公司开源的maven项目打包docker镜像的插件

使用该插件需要你的本机(开发机)
配置一个DOCKER_HOST环境变量 来指定docker服务器tcp访问地址,
如果你本机已经安装了dockerDesktop,就不需要配置这个环境变量

java项目快速打包镜像到docker服务器_第1张图片

配置案例

在你的springboot项目的根pom文件里的build节点下 plugins节点内 添加如下配置

<plugin>
    <groupId>com.spotifygroupId>
    <artifactId>dockerfile-maven-pluginartifactId>
    <version>1.3.5version>

    
    <executions>
        <execution>
            <id>defaultid>
            <goals>
                <goal>buildgoal>
            goals>
        execution>
    executions>

    <configuration>
        
        <repository>192.168.11.131:5000/myrepo/${project.artifactId}repository>
        <tag>${project.version}tag>
        
        
        <buildArgs>
            <JAR_FILE>${project.build.finalName}.jarJAR_FILE>
        buildArgs>
    configuration>

plugin>

你可能感兴趣的:(Docker容器技术,java,docker,服务器,dockerfile,dockerfile打包插件)