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

【docker快速部署微服务若依管理系统(RuoYi-Cloud)】

工作原因,需要一个比较完整的开源项目测试本公司产品。偶然发现RuoYi-Cloud非常适合,它有足够多的中间件,而且官方提供docker安装,但我本人在安装过程中遇到了很多坑,在这里记录一下防止下次会再次遇到。

项目地址

https://gitee.com/y_project/RuoYi-Cloud

环境

内存至少16G,处理器至少4核
内存小于16G,时间长了会导致响应过慢,经常出现响应超时的情况。

docker部署

  1. 把所有127.0.0.1和localhost全部代替为主机IP或者具体的服务名(如:ruoyi-mysql)。

      http://localhost:8080/swagger-ui/index.html -> http://[ip]:8080/swagger-ui/index.htmlhttp://localhost:8848/nacos - > http://[ip]:8848/nacoshttp://localhost:9100/login - > http://[ip]:9100/login127.0.0.1:9300 -> [ip]:9300127.0.0.1:8848\localhost:8848 -> ruoyi-nacos:8848localhost\n    port: 6379 -> ruoyi-redis\n    port: 6379localhost:3306 -> ruoyi-mysql:3306
    

一次性脚本

find . -type f -exec sed -i 's#http://localhost:8080/swagger-ui/index.html#http://10.0.2.52:8080/swagger-ui/index.html#g' {} +
find . -type f -exec sed -i 's#http://localhost:8848/nacos#http://10.0.2.52:8848/nacos#g' {} +
find . -type f -exec sed -i 's#http://localhost:9100/login#http://10.0.2.52:9100/login#g' {} +
find . -type f -exec sed -i 's#127.0.0.1:9300#10.0.2.52:9300#g' {} +find . -type f -exec sed -i 's#127.0.0.1:8848#ruoyi-nacos:8848#g' {} +
find . -type f -exec sed -i 's#localhost:8848#ruoyi-nacos:8848#g' {} +
echo "\要转译为\\\\"
find . -type f -exec sed -i 's#localhost\\n    port: 6379#ruoyi-redis\\n    port: 6379#g' {} +
find . -type f -exec sed -i 's#localhost:3306#ruoyi-mysql:3306#g' {} +

注意:10.0.2.52是我自己的物理机IP

图省事可以直接所有127.0.0.1和localhost全部代替为主机IP,但我为了模拟真实场景,使用的是服务名

  1. 编译后端代码
cd RuoYi-Cloud
mvn clean install
  1. 编译前端代码
cd ruoyi-ui
npm install
npm run build:prod
  1. 修改脚本copy.sh

进入目录

cd ../docker
vim copy.sh

  cp ../sql/ry_20230223.sql ./mysql/dbcp ../sql/ry_config_20220929.sql ./mysql/db

改为

  cp ../sql/*.sql ./mysql/db
  1. 把前后端包,以及sql文件带到指定位置
sh copy.sh
  1. 修改docker-compose.yml
  • 有“build:”配置的服务,都要把“image:”给注释掉,否则“build:”是不生效的,走的还是“image:”,拉的是远程的镜像。
sed -i 's/    image:/    #image:/g' docker-compose.yml
  1. 运行基础服务
sh deploy.sh base

查看日志,可能会发现nacos会报错,是因为mysql没有完全启起来,重新启动nacos即可。

移动要全部运行完才能走下面的步骤

  1. 启动所有应用
docker-compose up -d
  1. 查看各个服务的状态
docker-compose ps
  1. 查看整体服务的日志
docker-compose logs -f

遇到的问题

  1. 字符集
vim windows.sh
:set ff=unix
:wq
  1. 安装docker-compose
yum remove python-pip
wget https://bootstrap.pypa.io/pip/2.7/get-pip.py
python get-pip.py
pip install docker-compose
  1. docker-compose up -d失败
    报错信息
ERROR [ruoyi-gateway 1/4] FROM docker.io/library/openjdk:8-jre@sha256……
……
failed to solve: failed to read expected number of bytes: unexpected EOF

需要手动pull镜像,原因未知,可能跟源有关

docker pull openjdk:8-jre

成功图:
在这里插入图片描述
在这里插入图片描述
如有问题,可以来交流交流:
手机\微信号:15385125253
如有帮助的可以支持一下:

在这里插入图片描述
在这里插入图片描述

http://www.lryc.cn/news/163427.html

相关文章:

  • 面试求职-简历编写技巧
  • 云原生安全性:构建可信任的云应用的最佳实践
  • 第一章 数据库SQL-Server(及安装管理详细)
  • chrome extension无法获取window对象
  • 在linux虚拟机上安装docker(我的实践)
  • Spring之事务开发
  • 干了三年的功能测试,让我女朋友跑了,太难受了...
  • JavaScript函数的使用
  • 【算法】Java-使用数组模拟单向链表,双向链表
  • Nessus简单介绍与安装
  • 【每天一道算法题】day2-认识时间复杂度
  • 前端报错合集
  • Milvus以及Web UI 安装
  • Go for循环中的defer
  • 创建开机自启的脚本
  • 学生信息系统(python实现)
  • 管理类联考——数学——汇总篇——知识点突破——数据分析——1. 计数原理——排列组合——公式
  • C#,《小白学程序》第十六课:随机数(Random)第三,正态分布的随机数的计算方法与代码
  • 一文读懂java变量类型
  • 解决windows下git操作提示用户名密码错误的问题
  • ESP32开发:Clion配置IDF
  • 伦敦金的走势高低的规律
  • 【C#-1】C#调用matlab生成的dll库
  • MATLAB中pdist和pdist2的区别
  • 直播平台源码开发搭建APP的DASH协议:流媒体技术其中一环
  • 【前端】js解码base64
  • Apipost:API开发者的协同工作神器
  • 照片动起来软件有哪些?试试这几个
  • 【LeetCode】146.LRU缓存
  • 2021-2023顶会190+篇ViT高分论文总结(通用ViT、高效ViT、训练transformer、卷积transformer等)