重生之我在暑假学习微服务第五天《Docker部署项目篇》

目录

一、部署java后端项目

1、打包java项目

(1)java版本问题

(2)测试不通过

[2、 部署到虚拟机上](#2、 部署到虚拟机上)

3、访问项目

二、部署前端项目

1、查看配置文件

2、开始挂载

三、前后端联动测试

​编辑

四、DockerCompose

1、将文件拖到虚拟机中

2、将conf文件中的改为hmall

3、删除之前的容器和镜像

4、启动compose一键部署

结语


一、部署java后端项目

1、打包java项目

我这里打包的是虎哥给的资料中的java商城项目

这里遇到了两个问题

(1)java版本问题

这里所有文件用到的java版本都是11,我之前用的是17,所以要更换版本,这里要更改2个地方

这样就可以运行了

(2)测试不通过

可以看到这里报了个测试不通过的结果

我这里直接跳过测试部分了

2、 部署到虚拟机上

找一下jar包在哪

这里可以直接将路径复制过来查找

找到了jar包

连接上我们的centos,导入jar包和Dockerfile文件

开始下载镜像

查看下8080端口是否被占用(因为本项目用到的是8080端口)

运行镜像,这里需要和昨天布置的mysql用一个网段

启动项目

3、访问项目

可以看到这里访问成功了

后台这里可以看到日志也显示出来了,到这里java项目彻底部署成功了

二、部署前端项目

1、查看配置文件

确保和后端名称一致

2、开始挂载

这里出现了点小问题,不过都解决了

这里少了一步将nginx放到宿主机上

这下成功了

指令如下👇

复制代码
docker run -d --name nginx -p 18080:18080 -p 18081:18081 -v /root/nginx/html:/usr/share/nginx/html -v /root/nginx/nginx.conf:/etc/nginx/nginx.conf --network VON nginx

访问成功

三、前后端联动测试

查看下后端日志:docker logs -f hm

这里测试一下搜索功能

可以看到后端出现了搜索相关的日志

四、DockerCompose

1、将文件拖到虚拟机中

2、将conf文件中的改为hmall

3、删除之前的容器和镜像

删除容器

删除镜像

4、启动compose一键部署

这样就部署成功了

可以看到容器和镜像也自动创建好了

黑马商城访问成功

删除部署的项目

这里可以看到容器都删除了

结语

本文详细记录了微服务项目部署的全过程。首先解决了Java版本兼容问题,将商城项目打包并部署到Docker容器中,成功运行后端服务。接着配置前端Nginx服务,实现前后端联调测试。最后使用Docker Compose实现一键化部署,包含MySQL、后端和前端服务的容器编排。部署过程中遇到的问题如端口占用、配置文件修改等均得到解决,最终成功运行完整的黑马商城项目。文章还展示了如何通过Docker命令查看日志、管理容器等操作,为微服务学习提供了完整的实践案例。

相关推荐
wangqiaowq13 分钟前
AST 安全求值
java·开发语言
Java_2017_csdn1 小时前
OFC、ERP、OMS、WMS、TMS 对比-详解
java
励志不掉头发的内向程序员2 小时前
【从零写一个CAD 03】三个 double 值得单独一个类吗:把视图变换抽成 View
开发语言·c++·qt·学习·系统架构
m4Rk_8 小时前
【论文阅读】Agent 记忆机制(83):Inside Out——用可演化 PersonaTree 构建 Agent 的核心长期记忆
论文阅读·人工智能·学习·开源·github
代码方舟9 小时前
零信任架构实战:基于天远人企关联构建自动化供应链金融网关
运维·人工智能·架构·自动化
EatFan9 小时前
Spring Boot 4 落地观察:从 yudao-cloud、matecloud、JPower 看国产脚手架的升级路线与迁移清单
java·spring boot·后端·spring cloud·微服务·后端开发·jdk 21
Maiko Star9 小时前
* LangChain 提示词模板详解:ChatPromptTemplate 的使用与高级特性
java·人工智能·langchain
鬓戈9 小时前
Rust 语言与 AI 应用生态调研及学习路径
人工智能·学习·rust
天远API9 小时前
零信任架构实战:基于天远人企关联构建自动化图谱网关
网络·人工智能·架构·自动化
传奇开心果编程9 小时前
【SwiftUI娓娓道来】第3课:让界面活起来——交互与动画指南
学习·macos·ui·ios·swiftui·swift