当前位置: 首页 » 综合知识 » it知识 » 正文

如何使用Docker部署Spring Boot

发布时间:2023-07-20 以下文章来源于网友投稿,内容仅供参考!

一个简单 spring boot 项目

以spring boot 2.0 为例

在pom.xml文件中增加parament依赖

 <parent>
 <groupid>org.springframework.boot</groupid>
 <artifactid>spring-boot-starter-parent</artifactid>
 <version>2.0.0.release</version>
</parent>

增加web和测试依赖

<dependencies>
   <dependency>
     <groupid>org.springframework.boot</groupid>
     <artifactid>spring-boot-starter-web</artifactid>
   </dependency>
   <dependency>
     <groupid>org.springframework.boot</groupid>
     <artifactid>spring-boot-starter-test</artifactid>
     <scope>test</scope>
   </dependency>
 </dependencies>

创建一个 controller,在其中有一个index()方法,访问时返回:hello docker!

@restcontroller
public class controller {
 
  @requestmapping("/")
  public string index() {
    return "hello docker!";
  }
}

启动类

@springbootapplication
public class application {
 public static void main(string[] args) {
 springapplication.run(application.class, args);
 }
}

添加完毕后启动项目,启动成功后浏览器放问:localhost:8080/,页面返回:hello docker!,说明 spring boot 项目配置正常。

添加dcoker-maven-plugin

在pom.xml的properties节点中添加docker镜像前缀

<properties>
 <docker.image.prefix>springboot</docker.image.prefix>
</properties>

在plugins中添加docker构建插件

<build>
    <plugins>
      <plugin>
        <groupid>org.springframework.boot</groupid>
        <artifactid>spring-boot-maven-plugin</artifactid>
      </plugin>
      <plugin>
        <groupid>.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.finalnmae}.jar</include>
            </resource>
          </resources>
        </configuration>
      </plugin>
    </plugins>
  </build>

编写dockerfile

在目录src/main/docker下创建 dockerfile 文件,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"]
expose 8080

这个 dockerfile 文件很简单,构建 jdk 基础环境,添加 spring boot jar 到镜像中,简单的说明一下:

生成docekr镜像

需要有一个 docker 环境来打包 spring boot 项目。

需要三个依赖

运行java -version,mvn -version,docker version这些命令不报错就是环境准备好了。

进入项目目录

mvn package -dmavne.test.skip=true
java -jar target/spring-boot-docker-1.0.jar

能正常运行,说明jar包没问题。

然后构建镜像

mvn docker:build

显示build success就成功。

使用docker images来查看构建好的镜像

运行镜像

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

然后curl 127.0.0.1:8080可以看到返回hello docker!,说明成功

  • • Linux Ecdsa密钥长度选择有何依据

    在Linux

  • • Linux Khook在内核监控中的应用如何

    Linux

  • • Linux Gsoap是否支持异步通信

    GSOAP是

  • • Linux Coremail如何提升用户体验

    提升Linu

  • • Linux Ecdsa算法有哪些局限性

    ECDSA

  • 哎呀音乐钢琴键盘学习《 钢琴主人训练营》 西瓜学琴
    郭蝈 陪练钢琴 30节课时 考级刚需 让孩子每一次练琴都是高质量的
    30天轻松学会五线谱 流行钢琴自学初级教程 牙牙学琴
    流行爵士钢琴实战技巧VIP课 - 继伟 哎呀音乐
    【海上钢琴师】原版 MT1990钢琴谱
    百首经典流行钢琴实战曲集 - 继伟
    雷费尔德电钢琴重锤88键专业考级儿童初学者数码电子钢琴家用
    小练咖 真人钢琴陪练 1v1服务 2999随时退 1课时50分钟 考级刚需
    雅马哈电钢琴88键重锤CLP735智能数码电子钢琴家用专业初学者考级
    【原装进口】Yamaha/雅马哈钢琴 b121 SC2原声静音钢琴
  • 珠海专业调钢琴
  • 天津宝坻区调钢琴
  • 天津静海区钢琴调音
  • 成都简阳市钢琴调律
  • 大连瓦房店市钢琴调音
  • 眉山调钢琴联系方式
  • 惠州大亚湾钢琴调琴师
  • 长治调琴师
  • 厦门湖里区钢琴调音师
  • 上海普陀区钢琴调音师