Spring boot:使用Docker部署Spring Boot项目

本文详细介绍了如何在SpringBoot项目中添加Docker支持,包括环境搭建(Maven和Docker安装)、Dockerfile编写、项目中添加DockerController测试,以及最后的打包部署步骤。通过实例展示,助您快速掌握SpringBoot与Docker的集成应用。
摘要由CSDN通过智能技术生成

一、环境搭建

部署之前需要已经安装Docker和Maven(用于打包)。

  • 安装Docker
  • 安装Maven
    1、Maven下载链接
    2、解压
    在这里插入图片描述
    3、配置环境变量
    环境变量配置方法(Windows)
    1)添加新的系统环境变量:MAVEN_HOME
    2)设置其值为你安装的目录:
    在这里插入图片描述
    3)更新系统PATH 变量,添加变量值:%MAVEN_HOME%\bin
    在这里插入图片描述
    4)点击确定;
    5)然后使用【mvn --version】命令验证maven安装情况,如下图所示。
    在这里插入图片描述
    出现如图,则安装成功。

二、SpringBoot项目添加Docker支持

1)新建项目,添加一个DockerController,方便进行测试。

package com.pibigstar.web;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class DockerController {

    @GetMapping("/hello")
    @ResponseBody
    public String hello() {
        return "Hello Docker";
    }
}

2)添加Docker支持

 <properties>
        <!--添加Docker支持  Docker镜像名称-->
        <docker.image.prefix>springboot</docker.image.prefix>
    </properties>

添加 Docker插件:

			<!-- docker插件 -->
            <plugin>
                <groupId>com.spotify</groupId>
                <artifactId>docker-maven-plugin</artifactId>
                <version>1.0.0</version>
                <configuration>
                    <imageName>${docker.image.prefix}/${project.artifactId}</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>

3)编写Dockerfile文件

FROM java:8
VOLUME /tmp
COPY ./yumi-0.0.1-SNAPSHOT.jar app.jar
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

FROM指令指定一个已经存在的镜像,告诉Docker后续的指令都是在这个基础上进行的。例如:FROM java:8表示使用 Jdk1.8 环境为基础镜像进行构建镜像。

VOLUME ,VOLUME 指向了一个/tmp的目录,由于Spring Boot使用内置的Tomcat容器,Tomcat 默认使用/tmp作为工作目录。这个命令的效果是:在宿主机的/var/lib/docker目录下创建一个临时文件并把它链接到容器中的/tmp目录

ADD ,拷贝文件并且重命名

ENTRYPOINT,为了缩短Tomcat 的启动时间,添加java.security.egd的系统属性指向/dev/urandom作为ENTRYPOINT。
三个步骤文件如图

三、部署Spring Boot项目

1)maven打包:mvn package
2)运行:java -jar target/spring-boot-docker-1.0.jar
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3)项目启动成功可在浏览器中进行访问,如图,部署成功。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值