mxun系统主要是为了打造一个开源的,提供学习的一个轻量级博客系统。现在的AI比较发达,感觉也导致很多程序员丧失了学习的欲望,因为你学了很久的东西,别人一样可以通过AI来收到相关的知识然后去处理对应的问题,虽然如此,我还是觉得学习一些基础的知识还是很有必要的,我写这个系统的目的主要是为了以后能找一份更好的工作而写的,如果有志同道合的人,希望能够一起学习。
Vue 3 + TypeScript + Vite
备注: 由于我个人主要是学习后端的, 前端技术就只能应付一下
展望: 系统需通过权限的统一校验,接口权限的限制(类似充费会员模式)来实现系统的可靠性,从而协助用户完成文章的编辑发布与阅读功能。
进度: 从后端层面讲项目已完成用户的权限认证,接口权限限制等功能,从前端来看已经基本实现了AI的对话功能,具体的功能细节后面的章节会进行一个详细的说明。
微服务集成通义千问AI快速上手
后端: https://github.com/lzlandtll/mxun.git
前端: https://github.com/lzlandtll/mxun-web.git
-- 1.更新已经安装的软件,如果出现镜像源地址不可用则需要更新一下yum源地址
yum update -y
-- 1.1.备份centos官方镜像源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
-- 1.2.拉取新的镜像源地址
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
-- 1.3.清除本地已下载包的元数据和缓存
yum clean all
-- 1.4.更新下载软件的元数据信息
yum makecache
-- 1.5.更新已经安装的软件
yum update -y
-- 2.安装yum工具,可以使用其中的一些工具,例如仓库添加
yum install -y yum-utils
-- 3.添加docker镜像源(阿里镜像源可能没有docker的软件包,可通过yum list docker-ce)
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
-- 4.添加完docker镜像源仓库建议再次更新一下软件包这些
yum update -y
-- 5.安装docker(使用梯子)
yum install -y docker-ce docker-ce-cli containerd.io
-- 6.运行docker
systemctl start docker
-- 7.设置docker开机自启动
systemctl enable docker
-- 1.拉取mysql镜像
docker pull mysql:8.0
-- 2.运行mysql容器
docker run \
-p 3306:3306 --name mysql8 \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/my.cnf:/etc/mysql/my.cnf \
-v /mydata/mysql/conf.d:/etc/mysql/conf.d \
-e MYSQL_ROOT_PASSWORD=123456 \
-d mysql:8.0
-- 2.1.参数说明
--name mysql8 将该实例命名为mysql8
-p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口
-v /mydata/mysql/my.cnf:/etc/mysql/my.cnf:将配置文件挂载到主机
-v /mydata/mysql/conf.d:/etc/mysql/conf.d:将配置文件夹挂载到主机
-v /mydata/mysql/log:/var/log/mysql:将日志文件夹挂载到主机
-v /mydata/mysql/data:/var/lib/mysql/:将配置文件夹挂载到主机
-e MYSQL_ROOT_PASSWORD=root:初始化 123456
-d 后台方式运行
-- 3.进入mysql容器
docker exec -it mysql8 /bin/bash
-- 1.拉取redis镜像
docker pull redis
-- 2.创建配置文件夹
mkdir -p /mydata/redis/conf
-- 3.创建配置文件(直接运行redis可能就给你生成了文件夹)
touch /mydata/redis/conf/redis.conf
-- 4.运行redis
docker run -p 6379:6379 --name redis -v /mydata/redis/data:/data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf
docker run -d --name mongo \
-p 27017:27017 --restart=always \
-v /mydata/mongo:/etc/mongo \
-v /mydata/mongo/data/db:/data/db \
-e MONGO_INITDB_ROOT_USERNAME=root \
-e MONGO_INITDB_ROOT_PASSWORD=123qwer! \
-e TZ=Asia/Shanghai \
mongo
-- 1.创建自定义配置文件夹
mkdir -p /mydata/nacos/conf
-- 2.创建自定义配置文件
touch /mydata/nacos/conf/custom-config.yaml
-- 3.运行nacos容器
docker run \
--name nacos-server \
-p 8848:8848 \
-p 9848:9848 \
-p 9849:9849 \
-v /mydata/nacos/data:/home/nacos/data \
-v /mydata/nacos/conf/custom-config.yaml:/home/nacos/init.d/custom-config.yaml \
-e MODE=standalone \
-d nacos/nacos-server
sql代码过多,直接写到项目的根目录的sql文件夹下面的了,目前只有mxun-sys这个数据库
-- mongo不需要显示的创建出表结构数据,我这里就把大概的表结构给出来
session: 会话集合
sessionId: 会话ID
title: 会话标题
users: 创建用户ID
startTime: 会话开始时间
messages: 消息列表
messageId: 消息ID
role: 发送者
content: 会话内容
sendTime: 发送时间
metadata: 扩展信息
type: 信息类型(image, pdf, audio, video)
source: 扩展信息内容
url: 图片地址
fileId: 文件ID
duration: 持续时间
-- 根据这个链接地址然后开通就行
https://market.aliyun.com/apimarket/detail/cmapi00037170#sku=yuncode31170000018
-- 进入这个页面可以自己尝试摸索开通一下aiKey
https://www.aliyun.com/product/bailian?spm=0.29160081.0.0.45872943b8ZnAG
-- 这个页面应该有直接创建aiKey这些功能
https://bailian.console.aliyun.com/?spm=a2c4g.11186623.0.0.bc43453aZERtRx&apiKey=1#/api-key
-- 克隆后端项目
git clone https://github.com/lzlandtll/mxun.git
-- 克隆前端项目
git clone https://github.com/lzlandtll/mxun-web.git
-- 克隆完成之后使用相应的工具打开
-- 提示: 项目使用的jdk17,这个版本以下的应该跑不起来
1.修改mysql连接信息
2.修改redis连接信息
3.修改mongo连接信息
4.修改nacos连接地址
5.修改短信配置
6.运行项目(建立在maven依赖,jdk这些没有问题的情况下)
-- 1.安装依赖
pnpm install
-- 2.运行项目
npm run dev
-- 3.打开前端页面注册账号,进行使用即可
该视频使用的AI密钥已经被我删除,请使用自己的AI密钥
AI集成效果