Skip to content

DavisYao88/mdcms

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MdCms

MarkDown Content Management System


项目简介

MdCms 是一套基于 Spring Boot 的 Markdown 内容管理系统,支持内容管理、权限控制、系统监控等功能,适合用于个人或团队的知识管理、博客、文档等场景。

该项目基于开源项目mdRuoYi-Vue3RuoYi-Vue-fast 进行二次开发,补充md项目协同时数据和配置无法同步场景。

功能模块

技术栈

后端服务 (server)

  • 技术栈:Spring Boot 2.5.x、Spring Security、MyBatis、Druid、Redis、Swagger3、Quartz、Kaptcha
  • 主要功能
    • 用户管理:用户登录、权限分配、角色管理
    • 内容管理:文章创建、编辑、删除、分类管理
    • 系统监控:操作日志、在线用户、定时任务
    • 安全机制:JWT Token 认证、权限控制、XSS 防护、验证码
    • 数据存储:支持 MySQL 和 MongoDB
    • 其他:国际化、多环境配置、代码生成

管理后台 (admin)

  • 技术栈:Vue 3、Element Plus、Vite、Pinia、Vue Router
  • 主要功能
    • 用户界面:响应式设计,适配不同设备
    • 内容管理:文章编辑、分类管理、标签管理
    • 系统管理:用户管理、角色管理、菜单管理
    • 数据展示:图表展示、数据统计
    • 其他:文件上传、富文本编辑

编辑器 (md)

  • 技术栈:Vue 3、Vite
  • 主要功能
    • Markdown 编辑:实时预览、语法高亮
    • 格式转换:支持导出为多种格式
    • 图床支持:支持多种图床服务
    • AI 集成:支持多种 AI 模型辅助内容创作
    • 自定义配置:支持自定义主题和样式

快速启动

环境准备

  • JDK 17+
  • Maven 3.8.5+
  • MySQL 8.0
  • Redis
  • Node.js 20+

启动步骤

  1. 后端服务

    • 初始化数据库:执行 server/sql/script.sqlserver/sql/data.sql
    • 修改配置:编辑 server/src/main/resources/application.yml
    • 启动服务:在 server 目录下运行 mvn clean spring-boot:run -Dspring.profiles.active=druid,dev
  2. 管理后台

    • 安装依赖:在 admin 目录下运行 npm install
    • 启动开发服务器:运行 npm run dev
  3. 编辑器

    • 安装依赖:在 md 目录下运行 npm install
    • 启动开发服务器:运行 npm start

部署方案

项目支持两种部署方式:

  1. 完整部署:使用 docker-compose.example.yml 同时部署 MySQL、Redis 和应用服务。
  2. 应用服务部署:使用 docker-compose.yml 仅部署应用服务,需要外部提供 MySQL 和 Redis 服务。

环境变量配置

项目使用 .env 文件来配置环境变量,包括 MySQL 和 Redis 的连接信息以及其他服务配置。

访问方式

项目支持两种访问方式:

  1. 直接访问:通过端口直接访问各个服务:

    • MD前端:http://localhost:9201
    • Admin前端:http://localhost:9202
    • 后端服务:http://localhost:9200
  2. 通过Nginx访问:通过Nginx反向代理统一访问,参考docker/nginx.conf配置:

    • MD前端:http://xxx.com/md/
    • Admin前端:http://xxx.com/admin/
    • API接口:http://xxx.com/md/api/http://xxx.com/admin/api/
    • API文档:http://xxx.com/api/swagger-ui.html

部署步骤

  1. 完整部署

    • 复制 docker/.env.exampledocker/.env 并根据需要修改环境变量。
    • docker 目录下运行 docker-compose -f docker-compose.example.yml up -d
  2. 应用服务部署

    • 复制 docker/.env.exampledocker/.env 并根据需要修改环境变量,确保 MySQL 和 Redis 连接信息正确。
    • docker 目录下运行 docker-compose up -d

贡献指南

我们欢迎任何形式的贡献!请查看 CONTRIBUTING.md 获取提交 PR、Issue 的流程与规范。

支持我们

如果本项目对你有所帮助,可以通过以下方式支持我们的持续开发。


反馈与交流

如果你在使用过程中遇到问题,或者有好的建议,欢迎在Issues中反馈。你也添加作者微信,一起交流。

非常感谢原作者的精心创作和开源分享,让 MdCms 这样一套功能完善的 Markdown 内容管理系统能够惠及更多开发者和用户。项目融合了多个优秀开源项目的优势,为个人和团队的知识管理、博客和文档提供了强大支持。

License

  • This project is licensed under the MIT License.
  • Includes code from:

About

MdCms 是一套基于 Spring Boot 的 Markdown 内容管理系统,支持内容管理、权限控制、系统监控等功能,适合用于个人或团队的知识管理、博客、文档等场景。

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors