Shiny 整体系统的最小组成是 Shiny Central + Shiny Spider (至少一个) + Shiny Websocket Relay。
目前,该套程序并未设计用于广泛部署,所以代码中还有一些硬编码的内容,想要成功部署需要修改代码。
- 安装 Node.js LTS 版本
- 安装 Python 3.5 以上版本
- 安装 MySQL 5.6 以上版本
拉取代码、安装依赖
git clone https://github.com/Shiny-Project/Shiny
cd Shiny
npm install
配置数据库
cp ./config/env/production.example ./config/env/production.js
修改 `datasources.mysql` 的相关配置
修改 `common` 的相关配置
修改 `models.migrate` 为 `alter`
执行数据库迁移
sails lift
禁用数据库自动迁移
修改 `./config/env/production.js` 中的 `models.migrate` 为 `safe`
修改 Shiny-Central 和 Shiny Websocket Relay 的通信设置
修改 `./api/services/Pusher/Websocket.js` 中与 Shiny Websocket Relay 通讯的域名
启动
NODE_ENV=production sails lift
拉取代码、安装依赖
git clone https://github.com/Shiny-Project/Shiny-Spider
cd Shiny-Spider
pip install -r requirements.txt
配置
cp ./core/config.py.example ./core/config.py
按照文件内容修改config.py
- 其中
API_KEY
和API_SECRET_KEY
两项,需要手工修改数据库添加[1]。
修改 api
表,插入一行,key
和secret
自定。插入后填入config.py
。
修改 server
表,插入一行。
其中,type
值固定为spider
,host
为主机地址,填写域名或IP,name
自定,key_pair
为刚刚创建的 API_KEY 的 id
,info
为{}
。
- 修改与 Shiny-Central 的通讯设置
修改 ./core/database.py
约13行处,初始化 Shiny Python SDK 时,再传入api_host
参数。
[1] 如果安装了 Shiny Console 则可以通过 Web 界面操作。