当前位置:首页 » 《随便一记》 » 正文

手把手教你 docker 部署若依微服务框架

9 人参与  2024年04月07日 14:40  分类 : 《随便一记》  评论

点击全文阅读


在这里插入图片描述
从上面官网的介绍中,可以看到若依是一套提供了权限管理、代码生成的框架;之前一直使用的springboot ,最近也是因为业务需求,开始用springcloud 。本地运行的,只要在本地启动了nacos ,大致上是没什么问题,但是我部署上服务器,就遇见ruoyi-auth无法注册到 nacos服务中,各种尝试之后,终于可以,接下来就是我操作的步骤;这里的docker-compose 文件是使用的

https://gitcode.net/hjue/ruoyi-cloud-docker/ 多鱼的夏天

中docker 文件夹的内容,但是由于直接使用这个代码,执行sh deploy.sh modules 会一直报java版本的错。也结合了官网的docker文件
在这里插入图片描述
文件目录是这样的
下面来介绍具体的目录

准备工作

1、准备一台服务器,我使用的服务器是4核8G的,跑了所有的组件以及自己的业务部分
2、服务器选择centos,在服务器上安装jdk,(切记不要只安装jdk,其他的都不要安装),我安装的是jdk11,命令如下

yum install -y java-11-openjdk

3、安装docker

yum install -y yum-utilsyum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo安装yum install -y docker-ce启动dockersystemctl start docker#查看服务是否自动启动(是:enabled | 否:disabled)systemctl list-unit-files|grep docker.service #设置开机启动:如不是enabled可以运行如下命令设置自启动systemctl enable docker#重新加载服务配置systemctl daemon-reload #如果希望不进行自启动,运行如下命令设置systemctl disable docker#重新加载服务配置systemctl daemon-reload 

4、安装docker-compose

pip3 install --upgrade pippip3 install docker-compose

如何验证版本,可以使用

docker versiondocker-compose version

修改docker 文件夹的内容

这里主要是设置 mysql 的密码、导入的sql文件、加入新的业务模块

设置nacos的数据库 以及mysql的账号密码

在这里插入图片描述

在copy.h 中设置copy 的sql 和 业务部分的jar

在这里插入图片描述
复制一个这样的代码

echo "begin copy ruoyi-modules-gen "cp ../ruoyi-modules/ruoyi-gen/target/ruoyi-modules-gen.jar ./ruoyi/modules/gen/jar

然后修改为自己业务部分的名称

修改deploy.h

在port()中添加业务部分的端口,将9300 换成定义的业务端口

firewall-cmd --add-port=9300/tcp --permanent

在modules 中加入自己的业务模块,在后面追加模块名

modules(){docker-compose up -d ruoyi-nginx ruoyi-gateway ruoyi-auth ruoyi-modules-system}

如果你的新的业务模块名是。ruoyi-modules-business,就将modules 中的内容修改为

modules(){docker-compose up -d ruoyi-nginx ruoyi-gateway ruoyi-auth ruoyi-modules-system ruoyi-modules-business}

在ruoyi ——modules 加入新的业务模块,复制modules下的任意一个文件夹,修改其中的dockerfile

# 基础镜像FROM  openjdk:8-jre# authorMAINTAINER ruoyi# 挂载目录VOLUME /home/ruoyi# 创建目录RUN mkdir -p /home/ruoyi# 指定路径WORKDIR /home/ruoyi# 复制jar文件到路径COPY ./jar/ruoyi-modules-system.jar /home/ruoyi/ruoyi-modules-system.jar# 这里的system 换成自己的业务名# 启动系统服务ENTRYPOINT ["java","-jar","ruoyi-modules-system.jar"]# 这里的system 换成自己的业务名

修改docker-compose 文件

在这里插入图片描述
找到mysql ,将 MYSQL_DATABASE 换成自己定义的数据库名称,对应的是ruoyi-cloud 数据库

复制下面的内容,为新的模块配置

  ruoyi-modules-job:    container_name: ruoyi-modules-job    build:      context: ./ruoyi/modules/job      dockerfile: dockerfile    ports:      - "9203:9203"    env_file:      - ./env/ruoyi-service.env    depends_on:      - ruoyi-redis      - ruoyi-mysql      - ruoyi-nacos

job部分换成自己的业务名,端口部分换掉

在sql文件夹中 放入自己定义的数据库名称

如果你没有将ruoyi的数据库改成自己的数据库名称,那么这一步是没有必要的,如果有,那么只要保证里面放入的数据库名称 和图中的一致,但是如果你是直接复制ry-config数据库的话,那在文件中,将ry-config 修改自己的数据库名称

在这里插入图片描述

DROP DATABASE IF EXISTS `layman_config`;CREATE DATABASE  `layman_config` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;SET NAMES utf8mb4;SET FOREIGN_KEY_CHECKS = 0;USE `layman_config`;

接下来就是最重要的部分,找到java 代码部分的所有bootstrap.yml中图中的代码部分

在这里插入图片描述
将server-addr部分换成服务器的地址,不能使用127.0.0.1 (就是这里会造成服务无法在nacos中注册)

打包

生成jar

点击maven 中的install ,生成所有所有jar

执行sh copy.sh

在idea 中的终端,输入sh copy.sh 将文件copy到docker 文件中

将docker 拷贝到服务器上,按照步骤来

在docker 文件中打开终端,执行 sh deploy.sh base

安装成功之后 ,进入nacos 管理页面
在这里插入图片描述

修改配置页面中的 redis地址,也不能使用localhost,而是将localhost 换成ruoyi-redis

在这里插入图片描述
在ruoyi-system-dev 中数据库也改成对应数据库的
在这里插入图片描述
然后再回到终端中,执行 sh deploy.sh modules 就可以成功了。
下面把初版本中的docker文件打包,可以根据这个最初版本进行修改
docker文件下载


点击全文阅读


本文链接:http://zhangshiyu.com/post/91747.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1