【Docker进阶篇 DockerFile】1.SpringBoot项目制作成Docker镜像

打包SpringBoot项目

使用IDEA Maven 插件 打包SpringBoot项目,jar包名称为app.jar(自定义)

	
    <build>
        <finalName>${project.artifactId}finalName>
        <defaultGoal>compiledefaultGoal>
        <plugins>
            
            <plugin>
                <groupId>org.springframework.bootgroupId>
                <artifactId>spring-boot-maven-pluginartifactId>
                <configuration>
                    <mainClass>com.terry.tools.office.AppmainClass>
                    <includeSystemScope>trueincludeSystemScope>
                configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackagegoal>
                        goals>
                    execution>
                executions>
            plugin>
            
            <plugin>
                <groupId>org.apache.maven.pluginsgroupId>
                <artifactId>maven-compiler-pluginartifactId>
                <configuration>
                    <source>1.8source>
                    <target>1.8target>
                configuration>
            plugin>
        plugins>
    build>

创建Dockerfile

vim Dockerfile

DockerFile 内容

# 基础镜像使用java
FROM java:8
# 作者
MAINTAINER terry
# VOLUME 指定了临时文件目录为/tmp。
# 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp
VOLUME /tmp
# 将jar包添加到容器中
ADD app.jar app.jar
# 运行jar包
RUN bash -c 'touch /app.jar'
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
#暴露8080端口
EXPOSE 8080

目录结构:

  • app.jar

  • Dockerfile

打包成镜像

docker build -f Dockerfile -t app:1 .

运行

docker run -p 8080:8080 app:1

你可能感兴趣的:(docker,spring,boot,docker,java)