docker部署springboot项目

注意:这里的springboot项目是最简单的web项目

1、pom中添加docker-maven-plugin插件配置

<!-- Docker Maven plugin -->
<plugin>
    <groupId>com.spotify</groupId>
    <artifactId>docker-maven-plugin</artifactId>
    <version>1.0.0</version>
    <configuration>
        <imageName>springio/docker</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>

 

docker-maven-plugin插件用于将Spring Boot工程构建为Docker镜像:

imageName表示构建的Docker镜像名称,我们使用Docker的命名规范,命名为:springio/docker

dockerDirectory表示Dockerfile的路径

resource表示在构建时需要的资源文件,这些文件和Dockerfile放在一起,这里只需要Spring Boot生成的jar文件即可

2、创建Dockerfile文件

在src/main/docker目录下新建Dockerfile文件,没有后缀名

注意大小写!注意大小写!注意大小写!

FROM openjdk:8-jdk-alpine
VOLUME /tmp
ADD spring-boot-docker-1.0.jar app.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

 

spring-boot-docker-1.0.jar是maven打包生成的文件

FROM 该命令定义了使用哪个基础镜像启动构建流程

VOLUME 该命令用于让你的容器访问宿主机上的目录

ADD 拷贝文件并且重命名

ENTRYPOINT 配置容器启动后执行的命令,并且不可被 docker run 提供的参数覆盖

3、构建镜像

使用命令来构建docker镜像

maven package docker:build

 

构建成功后使用docker images或者docker image list来查看镜像

docker images
docker image list

 

springio/docker就是我们构建成功的镜像

4、启动镜像

docker run -p 8080:8080 -d springboot/spring-boot-docker

 

docker run 创建一个新的容器并运行一个命令

-p 端口映射,格式为:主机(宿主)端口:容器端口

-d 后台运行容器,并返回容器ID

查看运行中的容器

docker ps

 

在浏览器输入http://服务器ip:8080/就可以访问你的springboot项目了

 

具体请参考:Spring Boot 2.0(四):使用 Docker 部署 Spring Boot

posted @ 2018-08-22 13:23  苏生不语  阅读(720)  评论(0编辑  收藏  举报