当前位置: 首页 > article >正文

群晖上安装Tomcat运行环境

在这里插入图片描述

需要验证一个 war 包,手头上没有 vps,虽然虚拟机也可以,但是要安装一堆的依赖,数据库、JDKTomcat等等,想想就头大

群晖自带了数据库,加上 docker 套件,相对而言就简单多了

什么是 Tomcat ?

Apache Tomcat 是一个开源的应用服务器,主要用于运行 Java ServletJavaServer PagesJSP)技术。它是由 Apache 软件基金会开发和维护的,广泛用于构建和部署基于 JavaWeb 应用程序。

应用场景:

  • Web 应用开发:用于开发和部署各种 Web 应用程序。
  • 测试和开发环境:开发人员常用 Tomcat 作为本地开发和测试服务器。
  • 小型到中型企业应用:适合初创公司和中小型企业进行 Web 应用托管。

总之,Apache Tomcat 是一个功能强大且灵活的服务器,广泛应用于 Java Web 开发领域。

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 tomcat ,选择第一个 tomcat,版本选择 9.0

# 下载 Tomcat 9.0 镜像
docker pull tomcat:9.0

接下来创建目录

# 新建文件夹 tomcat
mkdir -p /volume1/docker/tomcat

# 进入 tomcat 目录
cd /volume1/docker/tomcat

为了挂载卷,将容器的配置文件、日志、webapps 等目录映射到主机上,我们需要先运行一次容器

# 创建并启动容器
docker run -p 8555:8080 --name tomcat9 -d tomcat:9.0

等容器正常运行之后,需要通过命令行,将容器内 /usr/local/tomcat/ 目录中的内容,复制到主机

# 复制容器中配置文件到主机
docker cp tomcat9:/usr/local/tomcat/. .

复制成功后,这个容器就完成了它的使命,可以停止、删除了

# 停止容器
docker stop tomcat9

# 删除容器
docker rm tomcat9

将要测试的 war 包放入 webapps 目录中

现在将日志、webapps 等目录映射到主机上,这样就可以直接在主机上修改文件,无需进入容器

老苏主要是为了方便更换 war 包和查看日志,所以只映射了 logswebapps

# 新建容器并挂载目录
## 必须加环境变量指定 TOMCAT_HOME,不然配置文件找不到
docker run -d \
   --restart unless-stopped \
   --name tomcat9 \
   -p 8555:8080 \
   -v $(pwd)/logs:/usr/local/tomcat/logs \
   -v $(pwd)/webapps:/usr/local/tomcat/webapps \
   -e TOMCAT_HOME=/usr/local/tomcat \
   tomcat:9.0

运行

这个 war 包是个接口程序,配置好 db.properties 就可以测试了

参考文档

Docker安装Tomcat并设置挂载卷(超详细)_docker tomcat9-CSDN博客
地址:https://blog.csdn.net/y393016244/article/details/129806762

tomcat - Official Image | Docker Hub
地址:https://registry.hub.docker.com/_/tomcat


http://www.kler.cn/a/469521.html

相关文章:

  • (六)优化 ChatGPT 交互:任务式 Prompt 的力量
  • 前后端环境配置java/vue/maven/node.js/mysql
  • C++相关实验练习
  • 开源平台Kubernetes的优势是什么?
  • 前端学习DAY31(子元素溢出父元素)
  • JavaScript语言的编程范式
  • 内蒙古水系详细很全shp格式arcgis软件无偏移坐标下载后内容测评
  • [python3]Excel解析库-xlwings
  • 捡鹅卵石C++
  • 走进深圳华为总部参观研学
  • 【AI日记】25.01.05 kaggle 比赛 3-4 | 周反思
  • Android NDK开发实战之环境搭建篇(so库,Gemini ai)
  • 爱诗科技PixVerseV3.5发布:短时极速生成,动漫效果超预期
  • Docker + JMeter + InfluxDB + Grafana搭建压测可视化实时监控
  • K8S中POD的生命周期之钩子函数
  • ubuntu开启root用户
  • jest使用__mocks__设置模拟函数不生效 解决方案
  • 为飞桨PaddlePaddle实现笛卡尔直积
  • 重庆市大数据局:基于可信数据空间的公共数据流通利用
  • 详解GPT-信息抽取任务 (GPT-3 FAMILY LARGE LANGUAGE MODELS)
  • 毕业项目推荐:基于yolov8/yolov5的行人检测识别系统(python+卷积神经网络)
  • d3dcompiler_47.dll缺失怎么修复全攻略:原理、步骤及注意事项
  • JS中的aynsc和await
  • IO编程与正则表达式
  • 保姆级教程Docker部署MySQL镜像
  • 网络安全的主要防护对象有哪些?