Linux服务器上使用Docker部署Java后端与Tomcat前端项目实战
需积分: 15 172 浏览量
更新于2024-08-05
收藏 957KB DOCX 举报
本资源提供了一种在Linux服务器上使用Docker部署Java后端项目以及在Tomcat上部署前端项目的详细步骤。文档中包含了使用Xshell和Xftp工具与Linux服务器交互,创建Dockerfile,构建Docker镜像,运行Docker容器,以及在Tomcat中部署前端应用的方法。
主要知识点:
1. Java Docker化部署:在 `/usr/local` 目录下创建项目文件夹,将后台Java项目打包成jar文件放入其中。接着创建一个名为 `Dockerfile` 的文件,用于定义镜像的构建过程。`Dockerfile` 内容如下:
- `FROM java:8` 指定基础镜像为Java 8。
- `VOLUME /tmp` 创建一个挂载点,用于处理随机数生成。
- `ADD ruoyi-admin.jar app.jar` 将本地的jar文件添加到镜像中并重命名。
- `ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "/app.jar"]` 定义启动命令,运行jar包。
2. 构建Docker镜像:使用 `docker build -t 镜像名称 .` 命令创建镜像,检查是否成功构建可通过 `docker images` 命令查看。
3. 运行Docker容器:通过 `docker run --name docker-demo -d -p 8082:8857 jerome.xin/docker-demo` 命令创建名为 `docker-demo` 的容器,将主机的8082端口映射到容器的8857端口,容器基于 `jerome.xin/docker-demo` 镜像启动。访问 `http://106.14.156.208:8083/login` 即可查看运行效果。
4. Tomcat部署:将前端项目打包并放入 `/usr/local/apache-tomcat-8.5.35/webapps` 目录下,解压缩后,在Tomcat的配置文件 `server.xml` 的 `<host>` 标签内添加 `<Context>` 标签指定默认访问路径。
5. 常用Docker命令:
- `docker images` 查看所有镜像。
- `docker ps -a` 查看所有容器。
- `docker rm 容器id` 删除指定容器。
- `docker rmi 镜像id` 删除指定镜像。
- `docker stop $(docker ps -aq)` 停止所有容器。
- `docker rm $(docker ps -aq)` 删除所有容器。
- `netstat -anp` 查看正在使用的端口。
- `ps -ef | grep 8082` 查找特定端口对应的进程。
- `kill -9 PID` 结束指定进程。
6. Xshell和Xftp工具:Xshell用于远程连接Linux服务器进行命令行操作,Xftp则用于文件的上传和下载,两者结合便于在本地与Linux服务器之间进行文件管理。
7. 网络配置:在配置Tomcat时,确保其监听的端口未被其他服务占用,可以通过 `netstat -anp` 和 `ps -ef | grep 端口号` 命令检查端口状态。
8. 安全配置:为了提高安全性,建议修改Docker容器的默认端口,并确保Dockerfile中的安全设置,例如避免不必要的暴露和使用非root用户运行应用。
以上步骤和知识点提供了在Linux环境下,利用Docker和Tomcat部署Java后端及前端项目的实践指南,涵盖了从环境准备到项目上线的关键步骤。
2024-07-08 上传
2020-01-02 上传
2020-03-31 上传
2023-11-08 上传
2021-01-09 上传
2022-07-10 上传
2020-09-29 上传
伴你若风
- 粉丝: 0
- 资源: 3
最新资源
- JHU荣誉单变量微积分课程教案介绍
- Naruto爱好者必备CLI测试应用
- Android应用显示Ignaz-Taschner-Gymnasium取消课程概览
- ASP学生信息档案管理系统毕业设计及完整源码
- Java商城源码解析:酒店管理系统快速开发指南
- 构建可解析文本框:.NET 3.5中实现文本解析与验证
- Java语言打造任天堂红白机模拟器—nes4j解析
- 基于Hadoop和Hive的网络流量分析工具介绍
- Unity实现帝国象棋:从游戏到复刻
- WordPress文档嵌入插件:无需浏览器插件即可上传和显示文档
- Android开源项目精选:优秀项目篇
- 黑色设计商务酷站模板 - 网站构建新选择
- Rollup插件去除JS文件横幅:横扫许可证头
- AngularDart中Hammock服务的使用与REST API集成
- 开源AVR编程器:高效、低成本的微控制器编程解决方案
- Anya Keller 图片组合的开发部署记录