重生之我在暑假学习微服务第五天《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命令查看日志、管理容器等操作,为微服务学习提供了完整的实践案例。

相关推荐
Linux-lucky6 小时前
21-Linux学习之旅之HTTPS和安全加固
linux·运维·学习·ubuntu·https
St_rive6 小时前
Page Object设计模式
java·开发语言·设计模式
风流 少年6 小时前
Spring AI 2.0:SSE
java·人工智能·spring
凤山老林7 小时前
精细化流量治理:Spring Boot 动态特性开关与灰度发布体系
java·spring boot·后端
资源大佬星 课it8 小时前
重学C++ ,重构你的C++知识体系
vue.js·docker·django
会周易的程序员8 小时前
aiDgePLC iec61131 虚拟机 完整使用文档
c++·物联网·架构·st·iec61131
学运维的Kysan8 小时前
暑假运维学习打卡第二十六天8.17
学习
dear_bi_MyOnly9 小时前
AI人工智能分类识别——机器如何学习
人工智能·学习·分类
Aphelios3809 小时前
一次锁内网络IO引发的Tomcat线程池“饿死”事故
java·开发语言·spring boot·elasticsearch·tomcat·网络io阻塞·线程池耗尽
不可求~9 小时前
C++ std::string_view 不是字符串:从悬空引用到安全用法
java·开发语言·c++