开始使用

WEB应用

您可以直接访问https://app.yihu.team注册用户之后开始使用。

本地部署

易乎APP采用Strapi + Mattermost + PostgreSQL + Quasar + Redis的技术方案,请根据本地部署文档逐步操作

环境需求

  1. node > 18 < 22
  2. PostgreSQL 16
  3. 阿里云OSS、且配置好STS
  4. Redis // 如果不需要,需要在源码中关闭相关插件

初始化PostgreSQL数据户

Strapi 数据库

参考 https://docs.fedoraproject.org/en-US/quick-docs/postgresql/ 完成数据库的安装和基础权限配置 PostgreSQL16之后,数据库权限操作繁琐、务必按照指南操作

// 终端进入数据库操作
sudo -u postgres psql
// Strapi 数据库部分
// 创建数据库 名称:yihu_strapi
CREATE DATABASE yihu_strapi WITH ENCODING 'UTF8' LC_COLLATE='en_US.UTF-8' LC_CTYPE='en_US.UTF-8' TEMPLATE=template0;

// 创建用户 名称:yihu_strapi 密码:yihu_strapi_passcode
CREATE USER ipbase_strapi WITH PASSWORD 'yihu_strapi_passcode';

// 赋权 逐行运行
GRANT ALL PRIVILEGES ON DATABASE yihu_strapi to yihu_strapi;

ALTER DATABASE yihu_strapi OWNER TO yihu_strapi;

GRANT USAGE, CREATE ON SCHEMA PUBLIC TO yihu_strapi;

Mattermost 数据库

// Mattermost 数据库部分
// 创建数据库 名称:yihu_mm
CREATE DATABASE yihu_mm WITH ENCODING 'UTF8' LC_COLLATE='en_US.UTF-8' LC_CTYPE='en_US.UTF-8' TEMPLATE=template0;

// 创建用户 名称:yihu_mm 密码:yihu_mm_passcode
CREATE USER ipbase_strapi WITH PASSWORD 'yihu_mm_passcode';

// 赋权 逐行运行
GRANT ALL PRIVILEGES ON DATABASE yihu_mm to yihu_mm;

ALTER DATABASE yihu_mm OWNER TO yihu_mm;

GRANT USAGE, CREATE ON SCHEMA PUBLIC TO yihu_mm;

Mattermost 安装、配置

安装

请参考https://mattermost.com/download/下载并部署Mattermost

注意:必须配置好反代、SSL、websocket反代,否则通讯部分将无法使用; Mattermost安装完毕后,自定验证是否配置正确

配置

  1. 创建好超级管理员之后,通过左上角按钮下拉,进入系统控制台 -> 集成 -> 整合管理 -> 开启个人访问令牌;
  2. 返回主界面,右上角头像按钮下拉弹框 -> 安全 -> 个人访问令牌:点击生成,复制生成内容,保存到本地,稍后要使用,注意:保存之前务必不要关闭,该内容只会出现一次
  3. 在Mattermost的用户界面中注意停留3分钟以上,如果websocket配置有问题,会出现错误提示,你可以参考Mattermost官方文档来解决错误。

Strapi 安装、配置

// 拉取后端源码
git clone **************************
// 进入源码目录
cd **
// 安装依赖
pnpm install    // 可以根据你的喜好自由选择npm cnpm yarn pnpm等工具

// 安装自建插件依赖
// 进入插件目录 src/plugins/mattermost
pnpm install    // 可以根据你的喜好自由选择npm cnpm yarn pnpm等工具

// 返回Strapi源码根目录,开启开发者环境
cd ../../../
pnpm run develop   // 可以根据你的喜好自由选择npm cnpm yarn pnpm等工具

配置

  1. 部署成功后,访问http://localhost:1337/admin初始化Strapi,创建超级管理员账户;
  2. 根据源码目录下.env.example文件中的示例与解释,补充.env中的内容;
  3. .env.example文件中某些条目需要在Strapi中上传文件后获取,请自行进入Strapi后台上传文件,并填写.env文件相关字段; 配置完毕之后,可以停止开发者环境运行,编译并正式部署
pnpm run build

前端部署

// 拉取前端源码
git clone *********
pnpm install

配置

复制 .env.example 文件为.env,并填写对应字段值 之后您可以运行开发环境来测试

pnpm run dev

编译

pnpm run build -m pwa // 编译为PWA应用,如果不需要pwa,可以使用pnpm run build 命令编译

编译之后会在dist目录下生成编译后代码,上传该内容到http服务器目录完成部署