Docker部署SSM项目及避坑指南
#又踩坑了,这里记录一下,以免日后忘记
前言:本来以为用docker部署个项目很轻松,嗯结果,又踩坑了,这里记录一个完整版。话不多说,开整。
第一步:
用docker拉取MySQL和Tomcat,这一步没什么好说的,太基础了(注意版本号)。

第二部:运行两个容器,这里以tomcat为例:
docker run -itd --name tomcat_1 --privileged -p 8081:8080 tomcat:9.0.83
注:运行MySQL的话,如果用导航工具,需要在MySQL上授权,否则会报连接错误,可以参考我之前的文章。
第三部:将准备好的SSM项目打成war包,然后复制到docker中tomcat容器下的/usr/local/tomcat/webapps目录下,tomcat会自动解压缩包,出现文件夹,效果如下:

第四部:这里建议直接安装以下命令,我们后续可能都会用上(根据自己的实际情况去定)
安装vim命令
apt-get install vim
安装ifconfig命令
apt-get install net-tools
安装ping命令
apt-get install iputils-ping
这里解释一下,为什么要安装这些:安装vim是因为你可能随时要改配置文件,安装ifconfig和ping是为了测试容器的连通性。
第五部:
我们修改tomcat的server.xml文件,位于conf文件夹下:

修改完后按:wq保存退出。
第六步,注意避坑来了,一定要把本地项目的连接数据库的ip地址改成容器地址,否则的话即便是你在本地主机能够正常访问MySQL,项目也一样连不上。这个地方我忘了,调试了好久,最后终于想到了这个问题。原理嘛,我就不多说了,可以好好看看docker的内部结构。

这里最好一定去验证容器见是可以通信的,以免发生意外:

最后一步,可以访问tomcat地址了:

如果不改数据库docker的地址,否则永远都无法与数据建立连接,即便是你本地测试已经好使了。

记录到此为止。
相关文章:
Docker部署SSM项目及避坑指南
#又踩坑了,这里记录一下,以免日后忘记 前言:本来以为用docker部署个项目很轻松,嗯结果,又踩坑了,这里记录一个完整版。话不多说,开整。 第一步: 用docker拉取MySQL和Tomcat&#…...
多线程代码案例:单例模式/阻塞队列/线程池/定时器
案例一.单例模式 单例模式是一种设计模式;类似于棋谱,有固定套路,针对一些特定场景可以给出一些比较好的解决方案; 只要按照设计模式来写代码,就可以保证代码不会太差,保证了代码的下限; --------------------------------------------------------------------------------…...
Ruby CGI Cookie
Ruby CGI Cookie 在Web开发中,Cookie是一种常用的技术,用于在用户浏览器和服务器之间存储和传递信息。Ruby作为一种流行的编程语言,提供了CGI(Common Gateway Interface)库来处理Cookie。本文将详细介绍如何在Ruby中使用CGI库来创建、读取、修改和删除Cookie。 Cookie的…...
linux中取消anaconda默认使用base环境
在linux新安装anaconda之后,每次打开终端,总是显示正在使用默认anaconda中的base环境,如下如所示: 取消该默认设置,打开home目录下的.condarc文件,在末尾添加如下命令: auto_activate_base: fa…...
江门中微子到底是做什么的?
江门中微子实验是一项重要的大科学装置实验。以下是关于它的一些详细信息: 实验位置与建设深度:位于广东江门地下 700 米处。这样的深度可以有效屏蔽宇宙射线等外界干扰,为探测中微子提供较为纯净的实验环境。探测器特点: 拥有世界…...
React源码03 - React 中的更新
03 - React 中的更新 React 中创建更新的方式: 初次渲染:ReactDOM.render、ReactDOM.hydrate 后续更新:setState、forceUpdate 1. ReactDOM.render() 先创建 ReactRoot 顶点对象然后创建 FiberRoot 和 RootFiber创建更新,使应用进…...
【Hive实战】Hive MetaStore升级调研(Mysql)
Hive MetaStore升级调研(Mysql库) 文章目录 Hive MetaStore升级调研(Mysql库)升级步骤脚本说明原文 MetaStore升级的主要部分是对存储媒介mysql进行schema进行升级。 升级步骤 关闭MetaStore实例并限制对MetaStore MySQL数据库的访…...
优化漏洞扫描流程以保障企业数字化业务安全
漏洞扫描技术历经二十余年发展,已从人工搜索演进至开源及商业扫描平台,其应用紧随IT环境与数字业务变迁而不断革新。为有效提升漏洞检测效果,确保企业数字化业务安全运行,安全专家建议遵循以下关键步骤实施漏洞扫描: …...
【大数据算法】一文掌握大数据算法之:大数据算法分析技术。
大数据算法分析技术 1、引言2、 大数据分析技术2.1 时间/空间复杂度2.2 I/O 复杂度2.3 结果质量2.4 通信复杂度 3、总结 1、引言 小屌丝:鱼哥,最近更文有些不频繁了哈。 小鱼:这一个月不见,你这说话方式也变了。 小屌丝ÿ…...
使用AITemplate和AMD GPU的高效图像生成:结合Stable Diffusion模型
Efficient image generation with Stable Diffusion models and AITemplate using AMD GPUs 2024年1月24日,作者是[Douglas Jia] Stable Diffusion 已成为图像生成领域的突破性进展,帮助用户将文本描述转化为引人入胜的视觉输出。 Stable Diffusion 的…...
基于yolov10的驾驶员抽烟打电话安全带检测系统python源码+pytorch模型+评估指标曲线+精美GUI界面
【算法介绍】 基于YOLOv10的驾驶员抽烟、打电话、安全带检测系统是一种先进的驾驶行为监测系统。该系统利用YOLOv10算法的高效性和准确性,实现对驾驶员行为的实时检测与识别。 YOLOv10是一种最新的实时物体检测模型,其通过深度学习技术,如卷…...
虚拟机网络设置为桥接模式
1、打开VMware Workstation Pro,点击“虚拟机—设置”,进入虚拟机设置页面 2、点击“网络适配器”,网络连接选择桥接模式 3、点击“编辑—虚拟网络编辑器”,进入虚拟网络编辑器页面 4、选择桥接模式,并选择要桥接到的…...
Numpy基础02
目录 1.数组操作 1.1改变维度 1.2遍历数组 1.2.1nditer(array,order) 1.2.1.1flags 参数 1.2.1.2op_flags 参数 1.3平展数组 1.3.1flatten(orderC) 1.3.2ravel() 1.4数组转置 1.4.1transpose() 1.4.2T 1.5分割数组 1.5.1hsplit(arr,indices_or_section) 1.5.2vsp…...
Elasticsearch是做什么的?
初识elasticsearch 官方网站:Elasticsearch:官方分布式搜索和分析引擎 | Elastic Elasticsearch是做什么的? Elasticsearch 是一个分布式搜索和分析引擎,专门用于处理大规模数据的实时搜索、分析和存储。它基于 Apache Lucene …...
Java中消息队列
MQ是Message Queue的缩写,也就是消息队列的意思,它是一种应用程序对应用程序的通信方法,使得应用程序能够通过读写出入列队的消息来进行通信,而无需要使用专用的连接来链接它们。消息队列中间件是分布式系统中重要的组件ÿ…...
高频面试手撕
手撕高频结构 前言 以下内容,都是博主在秋招面试中,遇到的面试手撕代码题目,不同于算法题目,更多考察的是基础知识,包含常见的数据结构比如线性表、哈希表、优先级队列等,还有多线程以及数据库连接池等内…...
Spring Boot 3.3 【八】整合实现高可用 Redis 集群
一、引言 在当今快速发展的软件开发领域,系统的性能和可靠性至关重要。Springboot 3 整合 Redis 7 集群具有多方面的重大意义。 首先,随着业务的不断发展,数据量呈爆炸式增长,单个 Redis 服务器往往难以满足存储和处理需求。Red…...
循环控制结构穷举 同构数
说明 同构数是会出现在它的平方的右边的数。例如,5就是1个同构数。5的平方是25,25最右边的这个数是5自己。25也是一个同构数,比如25的平方是625,而625右边的数是25. 请编程输出1000以内正整数中所有的同构数。每行一个答案。 输…...
主机本地IP与公网IP以及虚拟机的适配器和WSL发行版的IP
在局域网内,如果你想要连接到同一网络中的另一台设备,建议使用 本地 IP 地址(也称为局域网 IP 地址)。这是因为本地 IP 地址是在局域网内分配给设备的,用于在同一网络中的设备之间进行通信。 使用本地 IP 地址的好处 …...
@MassageMapping和@SendTo注解详解
MessageMapping注解是Spring Framework中用于WebSocket消息处理的注解,它用于将特定的消息路径映射到处理器方法上。SendTo注解指定了相应消息应该被发送到的目的地路径。 一、WebSocket配置类: Configuration EnableWebSocketMessageBroker public cl…...
Leaflet图层顺序实战:如何用setZIndex和bringToFront让你的地图层级不再混乱
Leaflet图层顺序实战:如何用setZIndex和bringToFront让你的地图层级不再混乱 当地图上同时存在多个图层时,你是否遇到过标注被底图遮盖、动态添加的标记消失在多边形下方,或是图层叠加顺序完全失控的情况?这些看似简单的层级问题&…...
MelonLoader终极指南:Unity游戏模组加载器的完整安装与使用教程
MelonLoader终极指南:Unity游戏模组加载器的完整安装与使用教程 【免费下载链接】MelonLoader The Worlds First Universal Mod Loader for Unity Games compatible with both Il2Cpp and Mono 项目地址: https://gitcode.com/gh_mirrors/me/MelonLoader 还在…...
2026春SDU软件创新实训第四周个人工作总结
第四周我做的工作总结如下: 从原始网页爬取科一科四题库 书接上期,我们找到了两个网页的题库(驾照吧(https://www.jiazhaoba.com/tiba)元贝驾考(https://www.ybjk.com/tiku))&…...
从AMP到cuFFT:半精度训练中非2的幂维度问题的深度解析与实战规避
1. 从报错信息看半精度训练中的cuFFT限制 最近在调试一个深度学习模型时,遇到了这样的报错:"RuntimeError: cuFFT only supports dimensions whose sizes are powers of two when computing in half precision"。这个错误看似简单,…...
Hunyuan-MT-7B开源镜像免配置部署:像素语言传送门一键启动教程(含GPU适配)
Hunyuan-MT-7B开源镜像免配置部署:像素语言传送门一键启动教程(含GPU适配) 1. 项目介绍 像素语言跨维传送门是一款基于Tencent Hunyuan-MT-7B大模型构建的创新翻译工具。它将传统翻译体验重构为16-bit像素冒险风格,让语言转换变…...
突破语音转换技术瓶颈:Retrieval-based Voice Conversion全平台实战指南
突破语音转换技术瓶颈:Retrieval-based Voice Conversion全平台实战指南 【免费下载链接】Retrieval-based-Voice-Conversion-WebUI Easily train a good VC model with voice data < 10 mins! 项目地址: https://gitcode.com/GitHub_Trending/re/Retrieval-ba…...
FastAPI 2.0流式AI接口上线前必须做的4项压力测试:QPS突破1200+的实测阈值与熔断配置清单
第一章:FastAPI 2.0流式AI接口压力测试全景认知FastAPI 2.0 引入了对异步流式响应(如 StreamingResponse)的深度优化,使大语言模型(LLM)类接口可原生支持 Server-Sent Events(SSE)、…...
FactoryBluePrints:颠覆性全流程工厂自动化解决方案
FactoryBluePrints:颠覆性全流程工厂自动化解决方案 【免费下载链接】FactoryBluePrints 游戏戴森球计划的**工厂**蓝图仓库 项目地址: https://gitcode.com/GitHub_Trending/fa/FactoryBluePrints FactoryBluePrints是戴森球计划的开源蓝图仓库,…...
重塑机械键盘体验:ZMK固件的革新之旅与实践指南
重塑机械键盘体验:ZMK固件的革新之旅与实践指南 【免费下载链接】zmk ZMK Firmware Repository 项目地址: https://gitcode.com/gh_mirrors/zm/zmk 在机械键盘的世界里,固件如同键盘的灵魂,决定着它的响应速度、功能拓展性和个性化程度…...
多平台资源下载解决方案:res-downloader实现数字内容自由获取
多平台资源下载解决方案:res-downloader实现数字内容自由获取 【免费下载链接】res-downloader 视频号、小程序、抖音、快手、小红书、直播流、m3u8、酷狗、QQ音乐等常见网络资源下载! 项目地址: https://gitcode.com/GitHub_Trending/re/res-downloader 在数…...
