分享好友 最新动态首页 最新动态分类 切换频道
docker Compose 部署springboot+vue前端端分离项目
2024-12-26 23:16

温馨提示:如果有自己的服务器最好不过了,这样部署网项目就可以上线了。没有的话,只能使用localhost 本机访问啦,记得替换 ngixn 中的ip地址、域名为localhost。


1、安装Docker并配置阿里云仓库加速

① 环境查看,选择对应的docker的安装版本
  • docker 帮助文档:https://docs.docker.com/get-started/overview/
 
2、安装Docker
  • 选择linux版本的docker安装教程
 
2-2、阿里云镜像加速
▪ 登录阿里云官网,点击控制台,找到产品与服务,搜容器镜像服务
▪ 镜像加速器
▪ 配置使用
 



3、安装DockerCompose

(1) 下载
 
(2) 授权
 
(3) 验证是否安装成功
 




  • 前端、后端增加生产环境配置,然后修改:项目主机号、请求路径以及将mysql和redis的主机号修改为docker compose的服务名

1、修改前后端配置文件的项目主机号

前端修改配置访问后端路径,后端改的就是跨域配置允许前端访问的路径

  • 前端生产环境配置
  • 后端生产环境配置(跨域配置)

2、修改前后端配置文件的项目请求路径

后端项目暴露的端口是8888,编写docker-compose.yaml时记得暴露

3、后端生产环境的配置把mysql和redis的主机号修改为docker compose的服务名

(1) 前端打包命令:npm run build

  • 打包生成了一个dist包

(2) 后端是多环境配置,打包记得把依赖一起打包

  • 记得配置激活的配置环境为 prod,如果忘记在springboot 配置中环境配置了,还可以在制作spirngboot镜像的dockerfile 中指明 生产环境是prod
 
 
  • 打包记得把依赖一起打包




 

接下来

① 编写构建各个项目模块的Dockerfile

② 编写docker-compose.yaml

③ mysql、redis、nginx的配置

④ 启动dockerCompose编排

⑤ 导入数据[数据库表数据、前端静态web资源]

⑥ 测试访问,并排除错误



1、上传打包生成的jar包,上传到/mnt/docker/ 目录,并修改jar包的包名为 blog_api.jar

2、编写镜像文件 api_dockerfile

 

3、构建生成镜像 api

命令: docker build -f dockerfile路径 -t 自定义镜像名称 .

 



1、编写 docker-compose.yaml

 

2、dockercompose 进行编排

前提:mysql、redis、nginx的配置文件配置好后才可以进行编排
 




1、mysql的配置

① mysql 服务在docker-compose.yaml 中的编写内容为
 
② 挂载mysql的配置文件
 
 

2、redis的配置

① redis 服务在docker-compose.yaml 中的编写内容为
 
  • 由于没有挂载配置文件,所有不用挂载redis的配置

3、nginx的配置

① nginx 服务在docker-compose.yaml 中的编写内容为
 
② 挂载nginx的配置文件
 
▪ nginx基本配置,编写nginx.conf文件[vim nginx.conf]
 
▪ nginx基本配置文件nginx.conf中include了一个mime.types配置文件
  • 上传mime.types配置文件

    • mime.types配置文件: 在nginx安装包的conf目录下,下载一个nginx获取,然后进行上传
    • mime.types的上传目录:结合dockercompose中数据卷的挂载点,推断出 /mnt/docker/nginx/
 

注意:没有自己的服务器,把下面 blog.conf配置 中的域名server_name 改为localhost,并且没有ssl证书,记得把443(https 协议端口号) 的配置去掉,并把80(http协议端口号)rewrite 部分去掉。


▪ nginx配置文件blog.conf
  • 记得将配置文件的中文注释去除再复制粘贴。
 
 

③ 配置nginx的ssl证书

申请、下载和上传服务器的ssl证书

  • 下载ssl证书:要选择nginx类型的下载

  • 上传nginx的ssl证书:要注意证书文件的名称、证书格式咱配置在nginx的配置文件保持一致

 
  • 上传ssl证书
 

可以启动dockercompose 进行编排啦~




1、导入数据库表的数据

(1) 导入sql文件
① mysql的挂载信息
 
② 数据库视图工具navicat 把表导出sql文件
③ 上传sql文件(文件名:blog.sql
  • 在数据库中创建和 sql文件(blog.sql)对应的数据库名blog
 
(2) 执行sql文件(创建blog 数据库并导入数据)
 
  • 接下来在docker中执行该sql:
 

将.sql文件导入数据库命令:mysql -u 用户名 -p 数据库(blog) < 要导入的数据库数据(blog.sql)

  • 结果检查
 
  • 如果能查出来结果,那就说明我们的mysql导入sql文件成功了。
  • 退出mysql数据库:exit
  • 退出mysql容器:exit
(3) 检查mysql的配置

● 编排dockerCompose之后检查docker中mysql的配置是否成功

 
  • 没有看到报错信息即成功(警告信息可以忽略)



2、导入前端静态web资源

(1) nginx 前端web资源的配置
 
 
(2) 手动压缩前端dist包,上传到 /mnt/shan/blog 目录
  • 手动压缩:是为了提高传输速度
  • 安装解压缩工具
 
  • 上传web资源(dist 压缩包)
 
 



可以测试排错啦~




(1) 测试

  • api 模块的测试:访问 https://blog.yilele.site/

    ● 当我们觉得部署完全搞定的时候,就可以docker-compose up -d 后台启动,这样的话关掉远程连接也能运行了。

(2) 排查错误

● docker 常用命令
 
● dockerCompose 常用命令
 
● 查看日志进行排查错误
 




最新文章
超逼真美女写真生成指南:用AI工具轻松打造梦幻女友!
限时免费,点击体验最近超火的AI生图神器,坐拥3000美女的大男主就是你! https://ai.sohu.com/pc/generate/textToImg?_trans_=030001_yljdaimn 在当今社交媒体盛行的时代,照片编辑和个性化变得越来越重要。尤其是在展示个人形象时,越来
免费的视频制作软件有哪些 高人气视频制作app合集
目前各种短视频应用给创作者提供广阔平台,能在这里真正展现自己,将个人的才艺分享给全世界,视频制作软件也成为必备工具,可添加背景音乐,添加视频素材及转场特效。简单易用的模式,无需专业技术就能轻松设计,为小伙伴们总结几款。1、
想在WordPress中嵌入YouTube播放列表?按照我们的循序渐进的教程,如何嵌入您的YouTube播放列表与缩略图,不需要代码。
你想在你的WordPress网站上嵌入YouTube播放列表吗?将YouTube播放列表添加到您的博客文章和登陆页面可以增加用户参与度并改善您的搜索引擎优化(SEO)。它也有助于获得更多的订阅者和发展你的频道。嵌入YouTube内容有很多好处:有几种不同的方
百度搜索框提示怎么用
  百度会根据您的输入内容,在搜索框下方实时展示最符合的提示词。您只需用鼠标点击您想要的提示词,或者用键盘上下键选择您想要的提示词并按回车,就会返回该词的查询结果。 您不必再费力地敲打键盘即可轻松地完成查询。  您输入拼音
淘宝商品监管15天是什么意思?原因是什么?(淘宝商品监管能恢复吗)
淘宝平台中的规则非常多,各位淘宝商家们需要遵守规则才行,如果出现了围观的行为,可能会导致店铺被监管哦,那么淘宝商品监管15天是什么意思?下面进行解答。淘宝商品监管15天是什么意思?1、账号被盗是店铺被监管的原因之一。2、商品的宝贝
规则引擎 Aviator&Drools&&Mvel&EasyRules
(2) 支持函数调用和自定义函数(3) 支持正则表达式匹配,类 Ruby 的指向匹配分组、自动类型转换 注:当执行操作时,会自动判断操作数类型并做相应转换,无法转换即抛异常(4) 支持传入变量,支持类似的嵌套变
优化大师软件有哪些 下载量高的优化大师软件排行榜
探索电脑性能优化的秘密!本文带你深入了解备受用户喜爱的优化大师软件,我们将揭示下载量排行榜上前几名的高效工具。无论是系统清理、速度提升还是个性化设置,这些热门软件无所不能。点击链接,一探究竟,让你的设备运行如飞!金山卫士网
更多UC浏览器安卓历史版本(10个)
精彩资讯一刷即有,热门头条轻松掌握。厂商联系方式:客服热线:020-66826682官方网站:https://www.uc.cn/官方微博:@UChttps://weibo.com/iucmobile官方微信:UCofficial客服微信:ucwebkfUC浏览器,一般又称UC手机浏览器,ucweb浏览器,ucw
盈科律师张晴花式炫富获封年度逼王 北大学历合伙人身份造假
  秦巴娱乐1月10日讯作为一名合格的吃瓜群众,不管是娱乐圈、金融圈还是其他什么圈的瓜,我们都要跟上,今天的瓜是律师圈的。说起盈科律师事务所,想必经历过逼死程序员老公这则新闻的人都知道,当事人翟欣欣的代理律师易胜华就是这家律
百度**推广怎么收费(百度**推广怎么收费有哪些标准)
网络平台的发展是一个大趋势,也是未来发展的重点,所以**主们纷纷想借助网络推广自己的产品及服务,但是网络的推广对于有些**主来说还是比较陌生,总是害怕投放的**费用无法与所得到的收益成正比。但是,他们又不想错过百度搜索推广,因此
相关文章
推荐文章
发表评论
0评