广告
返回顶部
首页 > 资讯 > 精选 >Docker如何部署SpringBoot应用
  • 114
分享到

Docker如何部署SpringBoot应用

2023-06-25 17:06:22 114人浏览 安东尼
摘要

这篇文章主要为大家展示了“Docker如何部署SpringBoot应用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Docker如何部署springBoot应用”这篇文章吧。前言部署项目时可能会

这篇文章主要为大家展示了“Docker如何部署SpringBoot应用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Docker如何部署springBoot应用”这篇文章吧。

    前言

    部署项目时可能会需要依赖于node.jsRedisRabbitMQMySQL等,这些服务部署时所需要的函数库、依赖项各不相同,甚至会有冲突。给部署带来了极大的困难。而Docker确巧妙的解决了这些问题,Docker为了解决依赖的兼容问题的,采用了两个手段:

    1. 将应用的Libs(函数库)、Deps(依赖)、配置与应用一起打包

    2. 将每个应用放到一个隔离容器去运行,避免互相干扰

    Docker如何部署SpringBoot应用

    本文将讲解如何使用Docker来部署我们平时用SpringBoot开发的项目:

    Docker如何部署SpringBoot应用

    Dockerfile

    什么是 Dockerfile?

    Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。

    Docker如何部署SpringBoot应用

    Dockerfile语法

    构建自定义的镜像时,并不需要一个个文件去拷贝,打包。

    我们只需要告诉Docker,我们的镜像的组成,需要哪些BaseImage、需要拷贝什么文件、需要安装什么依赖、启动脚本是什么,将来Docker会帮助我们构建镜像。

    而描述上述信息的文件就是Dockerfile文件。

    Dockerfile就是一个文本文件,其中包含一个个的指令(Instruction),用指令来说明要执行什么操作来构建镜像。每一个指令都会形成一层Layer。

    Docker如何部署SpringBoot应用

    打包SpringBoot项目

    准备项目:

    项目端口

    server.port=8080

    在templates文件夹下新建index.html

    <!DOCTYPE html><html lang="en" xmlns:th="Http://www.thymeleaf.org"><head>    <meta charset="UTF-8">    <title>Docker部署SpringBoot应用</title></head><body><h2>Docker部署SpringBoot应用</h2><img src="/static/img/2.jpg" alt="" width="100%"></body></html>

    定义主页Controller,跳转到index

    @Controllerpublic class indexController {    @RequestMapping("/")    public String index(){        return "index";    }}

    在本地预览效果:

    Docker如何部署SpringBoot应用

    在本地将SpringBoot应用打包成jar

    准备Maven-compiler-plugin插件

    <build><!--编译打包后的文件包名--><finalName>app</finalName><plugins><plugin><!--GAV坐标(G组织id,A项目id,V版本号)--><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.8.1</version><!--配置:    一般而言,target与source是保持一致的,但是,有时候为了让程序能在其    他版本的jdk中运行(对于低版本目标jdk,源代码中不能使用低版本jdk中不    支持的语法),会存在target不同于source的情况--><configuration><!--源代码使用的JDK版本--><source>1.8</source><!-- 需要生成的目标class文件的编译版本 --><target>1.8</target><!-- 字符集编码,防止中文乱码 --><encoding>UTF-8</encoding></configuration></plugin></plugins></build>

    maven是个项目管理工具,如果不告诉它代码要使用什么样的jdk版本编译,它就会用编译插maven-compiler-plugin默认的jdk版本来处理,这样就容易出现版本不匹配的问题,以至于可能导致编译不通过的问题。例如代码中要是使用上了Java8的新特性,比如函数式编程,但是maven在编译的时候使用的是Java7,那这一段代码是完全不可能编译成.class文件的。为了避免出现这种情况,在构建maven项目的时候,我习惯性第一步就是配置maven-compiler-plugin插件,指定项目源码的jdk 版本,编译后的 jdk 版本,以及编码方式。

    然后执行clean,最后执行package进行项目打包

    Docker如何部署SpringBoot应用

    出现BUILD SUCCESS说明打包成功了

    Docker如何部署SpringBoot应用

    打包成功后会出现target文件夹,目录下就会有刚刚打包的jar包

    Docker如何部署SpringBoot应用

    准备jar包和Dockerfile

    复制jar到桌面或自定义位置,在本地创建编写Dockerfile文件(注:名字必须为Dockerfile,去掉后缀名)

    Docker如何部署SpringBoot应用

    编写Dockerfile

    Dockerfile指令

    FROM java:8-alpineCOPY ./app.jar /tmp/app.jarENTRYPOINT java -jar /tmp/app.jar

    Dockerfile说明

    FROM java:8-alpine:

    基于java8构建镜像,默认构建java镜像需要安装配置环境变量,而java:8-alpine这个镜像已经帮我们把前面的步骤都做完了

    COPY ./app.jar /tmp/app.jar

    复制jar包

    ENTRYPOINT java -jar /tmp/app.jar

    入口命令

    使用工具将jar和Dockerfile上传到服务器

    上传位置看个人,我存放的位置:/tmp/docker

    cd tmpmkdir docker

    选择上传文件

    Docker如何部署SpringBoot应用

    上传到/tmp/docker目录下

    Docker如何部署SpringBoot应用

    构建镜像

    进入上传文件的目录:cd /tmp/docker,输入ls查看文件

    Docker如何部署SpringBoot应用

    输入命令构建镜像

    docker build -t test:1.0 .

    格式:docker build -t 镜像名称:版本号 Dockerfile所在目录路径

    命令说明:

    build:docker的二级命令

    • 构建镜像

    -t

    • -名称: 一般的镜像名称格式:名称:版本号(test:1.0)

    .

    • Dockerfile所在目录,因为我们已经进入了Dockerfile所在的目录,.代表当前目录

    可以看到构建镜像的时候会以我们编写Dockerfile的三条命令分为3个步骤执行

    Docker如何部署SpringBoot应用

    查看镜像

    查看Docker中的镜像命令:

    docker images

    可以看到我们自定义镜像test

    Docker如何部署SpringBoot应用

    创建并运行容器

    运行Docker镜像命令:

    docker run --name springboot -p 8080:8080 -d test:1.0

    命令说明:

    docker run: docker二级命令

    • 创建并运行容器

    --name

    • 定义容器名称,后面跟上容器名称(springboot)

    -p端口映射

    • 左边端口为linux的端口 ,右边为容器的端口号

    • 将linux端口映射在容器端口号上,这样访问linux端口等于访问容器端口号

    -d

    • 后台运行容器 ,否则退出之后容器就会停止运行

    test:1.0–>镜像名称

    • 选择自定义镜像test 的1.0版本来创建容器

    创建并运行容器成功!

    Docker如何部署SpringBoot应用

    查看正在运行的镜像

    正在运行的镜像命令

    docker ps

    Docker如何部署SpringBoot应用

    浏览器访问服务器的8080端口

    Docker如何部署SpringBoot应用

    手机访问:

    Docker如何部署SpringBoot应用

    查看日志

    查看容器日志命令

    docker logs -f springboot

    说明:

    查看容器日志但是不是实时更新,想要查看新的日志还需要重复运行

    docker logs + 容器名称

    实时更新日志

    docker logs -f + 容器名称

    Docker如何部署SpringBoot应用

    以上是“Docker如何部署SpringBoot应用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网精选频道!

    --结束END--

    本文标题: Docker如何部署SpringBoot应用

    本文链接: https://www.lsjlt.com/news/306118.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    本篇文章演示代码以及资料文档资料下载

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档
    猜你喜欢
    • Docker如何部署SpringBoot应用
      这篇文章主要为大家展示了“Docker如何部署SpringBoot应用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Docker如何部署SpringBoot应用”这篇文章吧。前言部署项目时可能会...
      99+
      2023-06-25
    • idea如何整合docker快速部署springboot应用
      小编给大家分享一下idea如何整合docker快速部署springboot应用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、前言容器化一词相信大家已经不陌生了...
      99+
      2023-06-25
    • Docker部署SpringBoot应用的实现步骤
      目录前言Dockerfile什么是 Dockerfile?Dockerfile语法打包SpringBoot项目在本地将SpringBoot应用打包成jar准备jar包和Dockerf...
      99+
      2022-11-12
    • docker如何部署tomcat应用
      要部署Tomcat应用程序,您可以按照以下步骤在Docker中使用Tomcat镜像:1. 首先,您需要安装Docker。请根据您的操...
      99+
      2023-08-17
      docker tomcat
    • docker 部署mysql详细过程(docker部署常见应用)
      之前给大家介绍过:docker(部署常见应用):docker部署nginx docker部署mysql:5.7.26 # 下载镜像 docker pull mysql:5.7.2...
      99+
      2022-11-12
    • Docker+Nginx如何部署单页应用
      本篇内容介绍了“Docker+Nginx如何部署单页应用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!开发...
      99+
      2022-10-19
    • Docker如何高效部署Node应用
      本篇内容介绍了“Docker如何高效部署Node应用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!❝ 如何在生产环境部署一个 Node 应用...
      99+
      2023-06-27
    • idea中如何将springboot项目部署到docker
      这篇“idea中如何将springboot项目部署到docker”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“idea中如何...
      99+
      2023-06-08
    • Docker部署Springboot项目(含MySQL+Redis)
      使用Docker部署之前写的一个博客项目,主要用到了MySQL和Redis,Redis作网站访问量统计。下面会对具体的部署方式作详细讲解 一、服务器安装Docker 1、删除docker旧版本 sud...
      99+
      2023-09-15
      docker spring boot mysql redis java
    • Jenkins+Docker+Gitee+SpringBoot自动化部署
      目录1, 搭建Jenkins平台2, Jenkins平台配置3,创建SpringBoot应用4,Gitee配置5, 新建自动化部署任务6,打包测试当我们使用传统的开发方式开发后台系统...
      99+
      2022-11-13
    • 如何使用Docker部署打包发布springboot项目
      这篇文章将为大家详细讲解有关如何使用Docker部署打包发布springboot项目,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。前言从安装docker到多种方式打包发布,编译,镜像,容器等问题,遇到种种...
      99+
      2023-06-29
    • 如何在docker容器中部署应用
      本篇内容介绍了“如何在docker容器中部署应用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一个简单的Hello World应用。1 Ma...
      99+
      2023-06-02
    • docker怎么部署nginx应用
      要部署Nginx应用,您可以使用Docker来进行部署。下面是一些步骤可以帮助您完成此过程:1. 首先,您需要安装Docker,可以...
      99+
      2023-10-20
      docker nginx
    • docker怎么部署django应用
      要部署Django应用程序,可以使用Docker进行容器化。下面是一些步骤:1. 创建Django项目:首先,在本地开发计算机上创建...
      99+
      2023-08-16
      docker django
    • docker怎么部署go应用
      要部署Go应用程序,您可以使用Docker来创建一个镜像并将其部署到容器中。下面是一个简单的步骤:1. 创建一个包含Go应用程序的目...
      99+
      2023-08-16
      docker go
    • IDEA如何通过Docker插件部署SpringBoot项目
      这篇文章主要介绍了IDEA如何通过Docker插件部署SpringBoot项目,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1、配置Docker远程连接端口找到并编辑服务器上...
      99+
      2023-06-21
    • idea整合docker快速部署springboot应用的详细过程
      目录一、前言二、环境及工具三、安装docker以及配置远程连接四、idea连接远程docker一、前言 容器化一词相信大家已经不陌生了,听到它我们可能会想到docker、k8s、je...
      99+
      2022-11-12
    • 怎么将SpringBoot应用Docker化并部署到SAP云平台
      这篇文章主要介绍“怎么将SpringBoot应用Docker化并部署到SAP云平台”,在日常操作中,相信很多人在怎么将SpringBoot应用Docker化并部署到SAP云平台问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希...
      99+
      2023-06-04
    • 【Docker】docker部署springboot+vue+mysql+nginx前后端分离项目【部署实战篇】
      文章目录 0、安装docker并准备一个springboot-vue前后端分离项目前后端打包放到服务器上1、docker 安装jdk2、docker 安装mysql通过Docker命令进入My...
      99+
      2023-09-03
      docker spring boot vue.js
    • Docker快速部署SpringBoot项目介绍
      1、安装 Docker 首先打开linux环境,输入以下命令进行安装: 安装 yum install docker 检查是否安装成功 docker --version #启动...
      99+
      2022-11-12
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作