/Server

TRPG 标准服务端集成, 基于koa + socket.io, 基于包的组合架构

Primary LanguageTypeScriptMIT LicenseMIT

Server

CircleCI codecov

安装环境

本项目基于NodeJS,因此服务器上必须配备NodeJS才能正常运行本服务器。
同时本项目使用npm进行包管理,由于安装NodeJS环境的时候会自动安装npm因此无需另外安装。

建议的Node版本: v10.19.0

需要依赖:

  • Redis
  • MySQL

配置代码依赖

# 安装所有环境
$ npm install && npm run packages:install

配置数据库

本项目基于config作为配置管理方案

创建config/local.js文件, 参考config/default.js的内容进行配置的覆写

你可以以以下的配置例子作为起步配置

module.exports = {
  db: {
    database: 'trpg',
    username: 'root',
    password: 'root',
    options: {
      host: 'localhost',
      dialect: 'mysql',
    },
  },
  jwt: {
    secret: 'any string',
  },
  redisUrl: 'redis://127.0.0.1:6379/8',
};

写入数据库结构

$ npm run db:migrate:run

写入默认数据

$ npm run db:seeder:run

运行服务器

$ npm run dev
# or 
$ npm run pro

数据库编码

因为用户的输入奇奇怪怪。所以请确保数据库字符集为utf8mb4, 至少要确保chat_log.message的编码方式为utf8mb4