2a92fa385ba1400d6bb918bad39805b866c4d62e
MixIO
面向自主可控信息科技教育的开源物联网服务器
主站(免费使用)
私有部署发行版-latest
Windows-x64发行版(win10及以上)
https://gitee.com/bnu_mixly/mixio-win32-x86-dist/blob/master/mixio.exe
Windows-x64发行版(win7)
https://gitee.com/bnu_mixly/mixio-win32-x86-dist/blob/win7/mixio.exe
Linux-x64发行版
https://gitee.com/bnu_mixly/mixio-linux-x86-dist/blob/master/mixio
Linux-arm64发行版
https://gitee.com/bnu_mixly/mixio-linux-arm64-dist/blob/master/mixio
MacOS-x64发行版
https://gitee.com/bnu_mixly/mixio-linux-x86-dist/blob/darwin/mixio
指令说明
- mixio start 启动服务器(默认在8080端口)
- mixio stop 关闭服务器
- mixio help 查看更多指令
- Windows版可直接双击mixio.exe查看更多选项
- Linux/MacOS版 可mixio install将mixio添加到systemctl中
不同版本间数据迁移
- 复制服务器目录下的reserve文件夹进行替换,即可完成数据迁移
- 复制服务器目录下的config文件夹进行替换,即可完成配置选项迁移(新老版本间的配置文件可能存在差异,建议手动配置)
从源码运行(debug模式)
- git clone https://gitee.com/mixly2/mixio.git
- node mixio.js debug
从源码构建
- 编译脚本见pkg_tools/
- 基本环境:node20(windows7为node12), python3, cmake, pkg.
安卓端运行服务器(experimental)
- 安装termux(https://termux.dev/en/)
- apt update
- apt upgrade
- pkg install nodejs-lts
- pkg install python
- pkg install binutils
- pkg install git
- git clone https://gitee.com/mixly2/mixio.git
- cd mixio
- export GYP_DEFINES="android_ndk_path=''"
- npm i
- node mixio.js debug
- 设置termux应用 - 允许自启动,无省电策略
服务器配置文件(config/config.json)
- 首次运行服务器后,会在相对应位置的config文件夹生成config.json
- config.json内容可修改,重启服务器后生效
- MIXIO_HTTP_PORT - int,HTTP端口,默认为8080
- MIXIO_HTTPS_PORT - int,HTTP端口,默认为8443
- HTTPS_PRIVATE_PEM - string, 私钥链接,支持本地地址和在线地址
- HTTPS_CRT_FILE - string, 证书链接,支持本地地址和在线地址
- MIXIO_MQTT_PORT - int, MQTT端口, 默认为1883
- MIXIO_WS_PORT - int, MQTT over WebSocket端口, 默认为8083
- MIXIO_WSS_PORT - int, MQTT over WebSocketS端口, 默认为8084
- MAX_PROJECT_NUM_PER_USER - int,每个用户的最大项目数,默认为20
- MAX_MESSAGE_PER_USER - int,每个用户的最大离线消息存储数,默认为1000
- MAX_MESSAGE_PER_SECOND - int,每个用户每秒的最大消息数,默认为5
- ALLOW_REGISTER - bool,是否允许自主注册,默认为true
- ALLOW_HOOK - bool,是否允许离线存储消息,默认为true
- OFFLINE_MODE - bool,是否禁用天气/地图数据,默认为true
- BAIDU_MAP_AK - string,百度地图客户端应用AK(OFFLINE_MODE=false时必须配置),默认为""
- BAIDU_MAP_SERVER_AK - string,百度地图服务端应用AK(OFFLINE_MODE=false时必须配置),默认为""
- BAIDU_STAT_LINK - string, 百度统计链接,通常以"https://hm.baidu.com/hm.js?"开头
- ADMIN_USERNAME - string,管理后台用户名,默认为"admin"
- ADMIN_PASSWORD - string,管理后台密码,默认为"public"
- STORAGE_ENGINE - string,数据库引擎,默认为"sqlite"
- MYSQL_HOST - string,MySQL地址(STORAGE_ENGINE="mysql"时必须配置),默认为"localhost"
- MYSQL_PORT - int,MySQL地址(STORAGE_ENGINE="mysql"时必须配置),默认为3306
- MYSQL_USER - string,MySQL用户名(STORAGE_ENGINE="mysql"时必须配置),默认为""
- MYSQL_PASS - string,MySQL密码(STORAGE_ENGINE="mysql"时必须配置),默认为""
- MYSQL_DB - string,MySQL数据库名(STORAGE_ENGINE="mysql"时必须配置),默认为"mixio",
- FOOTER - string,显示在首页的备案信息,公网部署时请务必配置此项(支持HTML语言,请注意为双引号添加转义字符\),默认为""
Languages
JavaScript
94.2%
EJS
3.3%
HTML
1.5%
Python
1%