SpringBoot 项目Docker部署三种方式

news2024/11/26 2:37:20

一种:直接拷贝jar到服务器部署

1.增加docker配置文件

新建Dockerfile文件,负责Docker的配置

FROM openjdk:21

#ENV timezone
RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \&& echo 'Asia/Shanghai' >/etc/timezone

# WORKDIR
WORKDIR /app

#Copy command, copy files or directories from the context directory to the specified path in the container
COPY spring-monitoring.jar /app/spring-monitoring.jar

#EXPOSE 18081
ENTRYPOINT ["java", "-jar", "-Xmx512m", \
            "-XX:-OmitStackTraceInFastThrow", \
            "spring-monitoring.jar", "--logging.file.path=/app"]


#"-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005",\

2.上传jar包到远程目录:

创建目录命令:mkdir -p /apps/spring

把自己的jar包和dockerfile文件上传到创建的目录
在这里插入图片描述

3.build新的镜像

docker build -t dtb/spring-monitoring:1.0 .
docker images #查看刚构建的镜像

在这里插入图片描述

4.启动容器:

docker run -d --name monitoring --restart always --net host dtb/spring-monitoring:1.0

在这里插入图片描述

docker安装及docker常用命令

二种:SpringBoot 通过maven插件实现docker镜像打包

此方法需要开启远程访问2375 端口不太安全,如果需要安全的话还需要Docker启用TLS加密
这里暂不做介绍

三种:idea 链接docker直接构建镜像启动容器

在项目根目录下增加docker配置文件

FROM openjdk:21

#ENV timezone
RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \&& echo 'Asia/Shanghai' >/etc/timezone

# WORKDIR
WORKDIR /app

#Copy command, copy files or directories from the context directory to the specified path in the container
COPY target/spring-monitoring.jar /app/spring-monitoring.jar

#EXPOSE 18081
ENTRYPOINT ["java", "-jar", "-Xmx512m", \
            "-XX:-OmitStackTraceInFastThrow", \
            "spring-monitoring.jar", "--logging.file.path=/app"]


下载插件

在这里插入图片描述

运行配置

在这里插入图片描述
点击服务器 三个点
在这里插入图片描述

点击加号,选ssh,ssh后面的三个加号配置链接服务器
在这里插入图片描述

这里的身份验证类型是密码在这里插入图片描述
在这里插入图片描述
Only key-pair ssh auth type is supported for docker connections
刚才使用ssh账号密码的方式,docker链接需要用ssh key
在这里插入图片描述
点测试连接 输入登录用户的密码
在这里插入图片描述
在这里插入图片描述

点确定在这里插入图片描述
可以添加不同的运行选项,包括绑定端口、绑定挂载、运行选项等
在这里插入图片描述

添加执行前编译
在这里插入图片描述

选择工作目录(当前自己项目的目录)及填写命令行,命令:clean package -U -DskipTests
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
执行
在这里插入图片描述
在这里插入图片描述
成功
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1604521.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[2021最新]Java时间戳和日期时间互转换

代码: import java.text.ParseException; import java.text.SimpleDateFormat;public class MainProcess {public static void main(String[] args) throws ParseException {// 1.set formatSimpleDateFormat timeSmat new SimpleDateFormat("yyyy-MM-dd HH:…

【Jupyter Notebook】快捷键

在命令模式下,单元格边框是灰色(缺省)的。这些快捷键主要用于操作单元格。 Enter:进入编辑模式Shift Enter:运行当前单元格并选中下一个单元格Ctrl Enter:运行当前单元格Alt Enter:运行当前单…

高效生产管理:选择顺通网络ERP系统派单的理由

显然,传统的生产管理模式已经难以满足现代企业的需求,因此选择一款适合自身业务特点的生产管理软件成为了企业的当务之急。顺通鞋业ERP系统作为一款功能强大的生产管理软件,凭借其出色的派单功能,正逐渐成为众多企业的首选。通过系…

DBA-现在应该刚刚入门吧

说来话长 在2023年以前,我的DBA生涯都是“孤独的”。成长路径除了毕业前的实习期有人带,后续几乎都是靠自学。如何自学,看视频、看文档、网上查阅资料、项目实战。 可能是学疏才浅 ,一直都是在中小公司混,在中小公司通…

MYSQL09_行格式概述、变长字段、NULL值、记录头信息、真实数据、内部结构

文章目录 ①. InnoDB - 行格式概述②. 变长字段长度列表 ③. NULL值列表④. 记录头信息5字节⑤. 记录的真实数据⑥. Compact行记录的内部结构⑦. Dynamic和Compressed行格式 ①. InnoDB - 行格式概述 ①. 我们平时的数据以行为单位来向表中插入数据,这些记录在磁盘上的存放方式…

PostgreSQL的学习心得和知识总结(一百三十八)|深入理解PostgreSQL数据库之Protocol message构造和解析逻辑

目录结构 注:提前言明 本文借鉴了以下博主、书籍或网站的内容,其列表如下: 1、参考书籍:《PostgreSQL数据库内核分析》 2、参考书籍:《数据库事务处理的艺术:事务管理与并发控制》 3、PostgreSQL数据库仓库…

09-ESP32-IDF中的日志系统

ESP32-IDF中的日志系统 在ESP32-IDF中,日志系统是一个重要的组成部分,它可以帮助开发者调试代码和理解系统的运行状态。 1. 日志系统的作用 日志系统在ESP32-IDF中扮演着非常重要的角色。它可以记录系统的运行信息,包括系统启动、运行、错…

OSPF笔记+大实验

OSPF综合大实验---实验报告 配置IP地址 R1: [R1]int g0/0/0 [R1-GigabitEthernet0/0/0]ip add 172.16.33.1 24 [R1-GigabitEthernet0/0/0]int l0 [R1-LoopBack0]ip add 172.168.34.1 24 R2: [R2]int g0/0/0 [R2-GigabitEthernet0/0/0]ip add 172.16.33.2 24…

电脑怎么创建加密磁盘?方法很简单!

在电脑中创建加密磁盘,可以有效地保护电脑数据,避免数据泄露。那么,电脑怎么创建加密磁盘呢?下面我们就一起来了解一下吧。 密盘创建方法 创建密盘建议使用超级秘密磁盘3000,软件界面简约,操作简单&#x…

Linux上比top更直观和美观的监控软件htop

2024年4月18日,周四上午 htop 是一个交互式的系统监控工具,类似于 Linux 系统中的 top 命令,但提供了更加友好的界面和功能。它允许用户以直观的方式查看系统的进程、CPU、内存、交换空间以及各种系统指标的使用情况。 一些 htop 的特点包括…

【hive】lateral view侧视图

文档地址:https://cwiki.apache.org/confluence/display/Hive/LanguageManualLateralView 1.介绍2.语法3.code demo1)单重侧视图2)多重侧视图3)tips:lateral view outer 1.介绍 lateral view也叫侧视图,属…

矿用连续式负压自动排渣放水器——YC型

从今天起,努力去做一个可爱的人,不羡慕谁,也不埋怨谁,在自己的道路上,欣赏自己的风景,遇见自己的幸福。 矿用连续式负压自动排渣放水器——YC型 【1-5-9】产品介绍 连续式式负压自动排渣放水器采用双罐体结…

项目管理的主要内容包括哪些?

项目管理作为现代企业管理的重要组成部分,其核心在于通过科学的方法和手段,对项目的启动、规划、执行、监控和收尾等全过程进行有效管理,以实现项目的预定目标。随着市场竞争的加剧和企业经营环境的不断变化,项目管理已成为企业提…

探索存内计算—基于 SRAM 的存内计算与基于 MRAM 的存算一体的探究

CSDN存内社区招募:https://bbs.csdn.net/forums/computinginmemory 首个存内计算开发者社区,现0门槛新人加入,发文享积分兑超值礼品; 存内计算先锋/大使在社区投稿,可获得双倍积分,以及社区精选流量推送&a…

项目7-音乐播放器4+喜欢/收藏音乐

1.喜欢/收藏音乐模块设计 1.1 请求响应模块设计 请求: { post, /lovemusic/likeMusic data: id//音乐id } 响应: { "status": 0, "message": "点赞音乐成功", "da…

瑞芯微RK3328(ROC-RK3328-PC)buildroot 开发QT的hello world

第一部分:编译rk3328 sdk 0. 环境 - EC-R3328PC(ROC-RK3328-PC) - ubuntu18(100GB) 1. 安装依赖 sudo apt-get updatesudo apt-get install repo git-core gitk git-gui gcc-arm-linux-gnueabihf u-boot-tools devi…

汽车充电桩充电效率的四大决定因素

随着电动汽车的快速普及,交流充电桩作为电动汽车的充电基础设施,其充电效率受到了广泛的关注。接下来,我们将深入探讨交流充电桩的充电效率,包括充电效率的定义、影响因素以及提升方法。 充电效率的定义 交流充电桩的充电效率指的…

Transformer with Transfer CNN for Remote-Sensing-Image Object Detection

遥感图像(RSI)中的目标检测始终是遥感界一个充满活力的研究主题。 最近,基于深度卷积神经网络 (CNN) 的方法,包括基于区域 CNN 和基于 You-Only-Look-Once 的方法,已成为 RSI 目标检测的事实上的标准。 CNN 擅长局部特…

基于springboot实现编程训练系统设计项目【项目源码+论文说明】计算机毕业设计

基于springboot实现编程训练系统设计演示 摘要 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。本文介绍了编程训练系统的开发全过程。通过分析编程训练系统管理的不足,创建了一个计算机管理编程训练系统的方案。文…

【软件工程与实践】(第四版)第5章习题答案详解

第5章 一、填空题二、选择题三、简答题四、实践题 一、填空题 (1) 软件工程中的总体设计又称为 系统设计。 (2) 在软件工程中的设计阶段,需要充分体现软件工程的“模块化”“抽象”“信息隐藏”等基本原则。 (3) 系统详细设计阶段最后产生的文档是 软件设计文档。…