Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/shen100/mili

mili 是一个开源的社区系统,界面优雅,功能丰富😛
https://github.com/shen100/mili

blog cms javascript nestjs nodejs typeorm typescript vue

Last synced: 27 days ago
JSON representation

mili 是一个开源的社区系统,界面优雅,功能丰富😛

Awesome Lists containing this project

README

        

mili
=

**mili**是一个开源的社区系统,界面优雅,功能丰富。
已在[米粒网](https://www.golang123.com) 得到应用,你完全可以用它来搭建自己的社区。**mili**的前端使用**vue**、**iview**等技术来开发,后端使用**typescript**、**nodejs**、**nestjs**、**typeorm**等技术来开发。

## 🎆 系统截图

## 👉 依赖的软件
| 软件 | 版本|
|:---------|:-------:|
| nginx | 1.17.1 |
| node.js | 8.4.0 |
| mysql | 5.6.35 |
| redis | 4.0.1 |

## ⚙️ 配置
### 配置hosts
127.0.0.1 local.nodejs123.com

### 配置nginx
请参考如下配置, 请修改日志目录

```
upstream nodejsAPI {
server 127.0.0.1:9905;
}

upstream nodejsStatic {
server 127.0.0.1:9906;
}

server {
listen 80;
server_name dev.golang123.com;

access_log /your/path/logs/golang123.access.log;
error_log /your/path/logs/golang123.error.log;

location /js {
proxy_pass http://nodejsStatic;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

location /styles {
proxy_pass http://nodejsStatic;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

location /images {
proxy_pass http://nodejsStatic;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

location /fonts {
proxy_pass http://nodejsStatic;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

location /sockjs-node {
proxy_pass http://nodejsStatic;
proxy_read_timeout 3600s;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}

location /webpack-dev-server {
proxy_pass http://nodejsStatic;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

location /api/v1 {
proxy_pass http://nodejsAPI;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header x-forwarded-proto https;
}

location / {
proxy_pass http://nodejsAPI;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header x-forwarded-proto https;
}
}
```

### 配置数据库
请修改{项目目录}/src/config/cfg.default.ts 文件中mysql的配置
```
export default {
db: {
type: 'mysql',
host: 'localhost',
port: 3306,
...
},
redis: {
host: '127.0.0.1',
port: 6379,
keyPrefix: 'mili:',
family: 4, // 4 (IPv4) or 6 (IPv6)
password: '',
db: 0,
},
...
}
```

## 🚀 安装
### 安装依赖的模块
进入项目目录,输入命令
```
npm install
```

进入 {项目目录}/pc 目录下,输入命令
```
npm install
```

再输入
```
npm start
```

## 🚕 运行
### 配置vscode
```
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"runtimeArgs": [
"--nolazy",
"-r",
"ts-node/register",
],
"args": [
"${workspaceFolder}/src/main.ts",
"|",
"./node_modules/.bin/pino-pretty"
],
"env": {
"NODE_ENV": "development"
},
"sourceMaps": true,
"cwd": "${workspaceFolder}",
"protocol": "inspector",
"console": "integratedTerminal",
"internalConsoleOptions": "neverOpen"
}
]
}
```

### 通过vscode来运行
按快捷键`F5`来运行项目

### 本地访问
首页: http://local.nodejs123.com
管理后台: http://local.nodejs123.com/admin/
用户名: mili
密码: 123456

### 线上体验
https://www.nodejs123.com

## License
[GPL](https://github.com/shen100/golang123-api/blob/master/LICENSE "")
Mili is GPL licensed.