Skip to content
On this page

Windows 部署

在 Windows 服务器或个人电脑上部署逸云 GIS,采用直接访问模式(Node.js 直接对外服务)。

适用场景: 本机使用、内网小规模团队使用(<10人)。 公网部署请参考 Nginx 配置 使用反向代理模式。

部署架构

用户 → Node.js (HTTP:3000 / HTTPS:3443)

Node.js 直接处理所有请求,无需额外组件,简单方便。

前置要求

  • Windows 10 / Windows Server 2016 及以上
  • 4GB+ 可用内存
  • 20GB+ 可用磁盘空间
  • 无需安装 Node.js(程序已内置)

部署步骤

1. 解压发布包

将收到的发布包解压到目标目录,例如:

D:\gisnode\

解压后的目录结构:

D:\gisnode\
├── node.exe            # 主程序
├── dist/               # 前端页面
├── docs/               # 用户手册
├── native/             # 原生模块
├── gdal-runtime/       # GDAL 运行时(可选)
├── data/               # 数据目录
└── .env                # 配置文件

2. 配置环境

编辑 .env 文件,直接访问模式的最小配置:

bash
PORT=3000
NODE_ENV=production

如需内置 HTTPS(可选),配置证书路径:

bash
SSL_CERT_PATH=./certs/server.crt
SSL_KEY_PATH=./certs/server.key

直接访问模式下,HTTPS 由 Node.js 处理,性能不如 Nginx。如果用户较多,建议使用 Nginx 代理模式

3. 启动服务

方式一:双击运行

直接双击 node.exe,会弹出命令行窗口显示日志信息。

方式二:命令行运行

powershell
cd D:\gisnode
.\node.exe

启动成功后会看到以下信息:

✅ 用户手册服务目录: D:\gisnode\docs
✅ 服务器已启动
   HTTP:  http://localhost:3000
   HTTPS: https://localhost:3443 (如果配置了证书)

4. 访问系统

注册为 Windows 服务

使用 nssm 将程序注册为系统服务,实现开机自启和后台运行。

安装 nssm

  1. https://nssm.cc/download 下载 nssm
  2. 将 nssm.exe 放到系统 PATH 目录

注册服务

powershell
# 安装服务
nssm install GisNodeServer D:\gisnode\node.exe

# 设置工作目录(重要!)
nssm set GisNodeServer AppDirectory D:\gisnode

# 设置显示名称
nssm set GisNodeServer DisplayName "逸云 GIS 服务器"

# 设置描述
nssm set GisNodeServer Description "逸云三维GIS平台服务"

# 设置自动启动
nssm set GisNodeServer Start SERVICE_AUTO_START

# 设置日志输出
nssm set GisNodeServer AppStdout D:\gisnode\logs\stdout.log
nssm set GisNodeServer AppStderr D:\gisnode\logs\stderr.log

# 启动服务
nssm start GisNodeServer

管理服务

powershell
# 查看状态
nssm status GisNodeServer

# 停止服务
nssm stop GisNodeServer

# 重启服务
nssm restart GisNodeServer

# 删除服务
nssm remove GisNodeServer confirm

防火墙配置

如果需要外部访问,需开放防火墙端口:

powershell
# 开放 HTTP 端口
netsh advfirewall firewall add rule name="GIS HTTP" dir=in action=allow protocol=TCP localport=3000

# 开放 HTTPS 端口
netsh advfirewall firewall add rule name="GIS HTTPS" dir=in action=allow protocol=TCP localport=3443

从直接访问模式切换到 Nginx 代理模式

如果后续用户量增加或需要公网部署,可以平滑切换到 Nginx 代理模式:

  1. 安装 Nginx(参考 Nginx 配置
  2. 修改 .env 文件:开启 TRUST_PROXY=true,注释掉 HTTPS_PORT 和 SSL 配置
  3. 配置 Nginx 反向代理到 localhost:3000
  4. 防火墙关闭 3000 端口对外访问,仅开放 80/443

常见问题

端口被占用

修改 .env 中的 PORT 变量:

PORT=8080

双击闪退

使用命令行运行查看错误信息:

powershell
cd D:\gisnode
.\node.exe

GDAL 功能不可用

如果看到 "⚠️ 未找到 GDAL 原生模块" 提示:

  • 确认 native/gdal.node 文件存在
  • 确认 gdal-runtime/ 目录存在
  • 不影响基本功能,仅 COG 元数据提取和坐标转换功能不可用

数据库权限

确保 data/ 目录有写入权限,右键 → 属性 → 安全 → 编辑权限。

基于 MIT 许可发布