部署 Windows 版本
基于Windows平台部署时,需要服务器环境具备以下要求:
环境要求
- Windows Server 2016 及以上
- IIS Service
- PostgreSQL 17 及以上
- 安装.Net 8 Runtime
部署步骤
1. 创建服务目录结构
基于规划中预定义的服务目录结构,创建类似如下的目录结构。
D:\flyenter
-----------\hamster
----------------------\portal
----------------------\slaver
----------------------\scheduler
----------------------\logs
----------------------\working_folder
2. 安装 IIS 服务
确保系统中安装了IIS服务,并确认Web Server(IIS)服务中选择如下服务:
- Common HTTP Features -
HTTP Redirection/常见HTTP功能 - HTTP重定向 - Application Development -
WebScoket Protocal/应用程序开发 - WebSocket协议
3. 安装.Net8 托管捆绑包
因为仅部署系统,不需要额外安装SDK包,仅托管捆绑包既可以。 官网地址
4. 确认 IIS 环境服务
打开IIS服务,在服务器对应的模块(Modules) 确认下述服务可以查找到。

5. 部署 RabbitMQ
- 默认安装otp
- 默认安装rabbitmq
运行RabbitMQ Command菜单,运行下述命令,来启动管理界面:
C:\Program Files\RabbitMQ Server\rabbitmq_server-4.0.5\sbin>rabbitmq-plugins enable rabbitmq_management
再使用RabbitMQ stop停止服务,再使用RabbitMQ start启用服务。
登陆本地浏览器: http://127.0.0.1:15672 可以访问Rabbit MQ的管理界面。
创建管理员角色账号:hamster / hamster123
注意:如果访问的RabbitMQ管理台页面有黄色的预警提示,如:All stable feature flags must be enabled after completing an upgrade,则需要启用所有稳定的功能标志来关闭它。
进入Feature Flags页面,找到状态为 “disabled” 的稳定功能标志(名称通常以 “stable” 标识);
点击对应标志的 “Enable” 按钮,启用所有稳定标志。警示条可以消失。
6. 部署 PostgreSQL
- 默认安装PostgreSQL
- 安装Admin工具
- 创建系统运行库,并导入
- hamster_support_v8
- hamster_support_log_v8
- hamster_support_hf_v8
7. 部署站点和Windows服务
1. 解压安装包
解压hamster_portal_win_v8.zip文件,并将内容复制到portal根目录下。
解压hamster_scheduler_win_v8.zip文件,并将内容复制到scheduler根目录下。
解压hamster_slaver_win_v8.zip文件,并将内容复制到slaver根目录下。
2. 调整配置文件
- appsetting.json:包括数据库、工作目录、RabbitMQ等信息
- NLog.config:包括日志目录信息
3. 创建IIS站点
在IIS中创建名为Hamster Portal的站点,
- 指定上述创建的
D:\flyenter\hamster\portal目录。 - 指定服务端口,可自定义,默认为
40020 - 保存后,编辑站点对应的
应用池信息,改为非托管模式/No Managed Code。
4. 部署Windows服务
在d:\flyenter\hamster目录下创建服务的部署脚本.
创建Create_xxx_Service.bat文件,文件内容中的路径对应当前真实部署的调度服务目录:
sc create flyenter.hamster.scheduler.v8 binpath= "D:\flyenter\hamster\scheduler\FlyEnter.Hamster.Scheduler.exe" start=auto displayname="Hamster Scheduler Service v8"
sc description flyenter.hamster.scheduler.v8 "Provider the scheduler service for Hamster Data Platform V8."
sc start flyenter.hamster.scheduler.v8
创建服务卸载脚本:
sc stop flyenter.hamster.scheduler.v8
sc delete flyenter.hamster.scheduler.v8