首页 > 其他分享 >【SpringBoot】Docker部署

【SpringBoot】Docker部署

时间:2023-10-29 12:33:04浏览次数:43  
标签:SpringBoot 部署 jar 生成 -- 根目录 docker Docker

docker部署是主流的部署方式,极大的方便了开发部署环境,保持了环境的统一,也是实现自动化部署的前提。

1 项目的目录结构

  • package: 点击打包,生成 xxx-SNAPSHOT.jar
  • target目录: 打包生成目录,生成的jar存放位置
  • Dockerfile: 跟项目根目录同级

image-20231007231121886

2 创建Dockerfile

# Docker 镜像构建
FROM maven:3.5-jdk-8-alpine as builder

# 指定工作目录
WORKDIR /app
# 将文件复制到容器里
COPY pom.xml .
COPY src ./src

# 打包,并跳过测试用例
RUN mvn package -DskipTests

# 启动服务
#   -- 指定 application-prod.yml 启动
CMD ["java","-jar","/app/target/xxxx-0.0.1-SNAPSHOT.jar","--spring.profiles.active=prod"]

3 生成docker镜像

打开终端,进入项目根目录,输入命令行

// 进入项目根目录
cd xxxx
// 生成镜像
docker build -t user-center:v0.0.1 .

image-20231007231705951

4 生成容器并启动

docker run --name user-center -p 8080:8080 user-center:v0.0.1

5 访问

输入http://localhost:8080/xxx 即可访问成功。

如果是在云服务器上,记得放行对应的端口。

本文由博客一文多发平台 OpenWrite 发布!

标签:SpringBoot,部署,jar,生成,--,根目录,docker,Docker
From: https://www.cnblogs.com/leovany/p/17795744.html

相关文章

  • springboot+vue2+element学生信息管理系统
    效果:  .vue<template><div><el-containerstyle="height:700px;border:1pxsolid#eee"><el-headerstyle="font-size:40px;background-color:rgb(238,241,246)">学生管理</el-header&......
  • springboot 断点上传、续传、秒传实现
    前言springboot断点上传、续传、秒传实现。保存方式提供本地上传(单机)和minio上传(可集群)本文主要是后端实现方案,数据库持久化采用jpa一、实现思路前端生成文件md5,根据md5检查文件块上传进度或秒传需要上传分片的文件上传分片文件分片合并后上传服务器二、数据库表对象说明:Abs......
  • Ansible部署mariadb高可用集群
    节点规划主机名IP地址master192.168.238.10node1192.168.238.11node2192.168.238.12node3192.168.238.13准备四台虚拟机,使用CentOS-7-x86_64-DVD-2009.iso镜像基础准备1,安装ansible[root@masterroot]# yuminstallepel-release-y  #......
  • fc大语言模型部署+本地知识库
      FCInvokeStartRequestId:930989fb-8910-400d-b981-1de87e89a3e3Info:@serverless-cd/engine:0.0.51,linux-x64,node-v14.19.2plugin@serverless-cd/checkouthasbeeninstalledplugin@serverless-cd/s-setuphasbeeninstalledplugin@serverless-cd/s-d......
  • SpringBoot使用Redis分布式缓存
    Redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sortedset有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基......
  • springboot项目实现断点续传功能
    这篇文章主要介绍了springboot项目实现断点续传,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下 java代码packagecom.ruoyi.web.upload.controller;importcom.ruoyi.web.upload.dto.FileChunkDTO;importcom.ruoyi.......
  • 使用FastAPI部署Ultralytics YOLOv5模型
    YOLO是YouOnlyLookOnce(你只看一次)的缩写,它具有识别图像中的物体的非凡能力,在日常应用中会经常被使用。所以在本文中,我们将介绍如何使用FastAPI的集成YOLOv5,这样我们可以将YOLOv5做为API对外提供服务。Python有几个web框架,其中最突出的两个是Flask和FastAPI。Flask是一个轻......
  • Spark3.3.2安装部署
    选择你想要的版本镜像链接https://mirrors.aliyun.com/apache/spark/?spm=a2c6h.25603864.0.0.5d1b590eLwbWr2sudotar-zxvf spark-3.3.2-bin-without-hadoop.tgz -C/usr/local/cd/usr/local/sudo mvspark-3.3.2-bin-without-hadoopspark-3.3.2chown-Rbill:free......
  • 使用 Jenkins + Github + dokcer-compose 部署项目-环境准备篇
    JDK的安装及配置openjdk官网安装sudoadd-apt-repositoryppa:openjdk-r/ppaaptupdateaptupgradeaptinstallopenjdk-11-jdk配置以上方式安装的jdk路径位于/usr/lib/jvm/java-1.11.0-openjdk-amd64配置环境变量,根据自己的shell配置编辑对应的文件vi/etc/profile......
  • 一些研发工程师在Springboot注意点
    一些研发工程师在Springboot注意点1.正确设计代码目录结构虽然您有很大的自由度,但有一些基本规则值得遵循来设计您的源代码结构。避免使用默认包。确保所有内容(包括入口点)都在命名良好的包中,这样您就可以避免与组装和组件扫描相关的意外情况;将Application.java(应用程序的入口类)......