RuoyiAdmin项目搭建及Docker 部署备忘

下载前后分离版,ruoyi: 项目扩展 | RuoYi

|----------------------------------------|
| https://gitee.com/Double_AutoEE/AutoEE |

这个是vite antdv

1.安装好后端基础:改端口、配接口、建数据库,前端下载后: npm install npm run dev

2.新建一个模块,包括完整的数据流程,包名尽量用 com.ruoyi.xxx,这样Controller直接使用,不用在RuoyiApplication.java中再配置@ComponentScan({"com.testname."})

3.新建模块的POM里加上:

复制代码
<dependencies>
    <dependency>
        <groupId>com.ruoyi</groupId>
        <artifactId>ruoyi-common</artifactId>
    </dependency>
</dependencies>

ruoyi-admin的pom里加上:

复制代码
<dependency>
    <groupId>com.ruoyi</groupId>
    <artifactId>piaopiaoruo</artifactId>
    <version>${ruoyi.version}</version>
</dependency>

4.将原项目中的mybatis 替换为 Mybatis-plus :参考 若依前后端分离版本原生mybatis替换mybatis-plus详细教程_mybatis_会飞的三胖子-RuoYi 若依

主pom中加入 依赖:

复制代码
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.5.1</version>
</dependency>

在common 及framework中加入 子依赖:

复制代码
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
</dependency>

framework的config 中,去掉 mybatisconfig.java, 加入 mybatisplusconfig.java:
复制代码
@Configuration

public class MybatisPlusConfig {
    @Bean   //解决 Page total 一直为0的情况
    public MybatisPlusInterceptor mybatisPlusInterceptor(){
        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.H2));
        return interceptor;
    }
}

最后 admin 主类加上:

复制代码
@MapperScan("com.ruoyi.piao.dao")

5.Docker 部署:

复制代码
FROM openjdk:8
EXPOSE 1024
VOLUME /tmp
ADD ./target/ruopiao.jar  /ruopiao.jar
RUN bash -c 'touch /ruopiao.jar'
ENTRYPOINT ["java","-jar","/ruopiao.jar"]

把Dockerfile 及jar 上传到 服务器,运行:

docker build -t ruopiao .

docker run -d -p 1024:1024 --name piaoruo --restart always ruopiao

镜像必须是最后一个,执行过最自动启动了,不用再docker start piao

(上面加restart就不用这一行了)docker update piaoruo --restart=always

6.在package.json中添加:

复制代码
"build:prod": "vite build --mode prod",

即可按 npm run build:prod 打包 ,部署前端。

相关推荐
算力魔方AIPC2 小时前
如何用算力魔方4060安装PaddleOCR MCP 服务器
运维·服务器
Ray Song3 小时前
【Linux】 wget、curl 用法区别
linux·运维·服务器·curl·wget
@寄居蟹3 小时前
Docker 命令大全
docker·容器·eureka
小妖6663 小时前
本地文件夹即时变身 Web 服务器(文件服务器)
运维·服务器
运维开发王义杰4 小时前
GitLab CI:深度解析 Runner的Shell与Docker执行器
ci/cd·docker·gitlab
qq_364371724 小时前
Docker 常见命令
运维·docker·容器
照物华5 小时前
k8s之 Pod 资源管理与 QoS
云原生·容器·kubernetes
hhzz5 小时前
重温 K8s 基础概念知识系列八( K8S 高级网络)
网络·容器·kubernetes
Insist7535 小时前
K8s--调度管理:node节点、Pod亲和性、污点与容忍
linux·容器·kubernetes
Insist7536 小时前
k8s——持久化存储 PVC
java·容器·kubernetes