Skip to content
On this page

私有云部署

在企业私有数据中心部署逸云 GIS。

部署架构

┌─────────────┐
│   Nginx     │  ← 对外暴露 80/443
│   反向代理   │
└──────┬──────┘

┌──────┴──────┐
│  逸云 GIS   │  ← 运行在 3000 端口
│  node.exe   │
└──────┬──────┘

┌──────┴──────┐
│  数据存储   │
│  data/      │
└─────────────┘

逸云 GIS 以独立可执行程序运行,无需安装 Node.js 等运行时环境。

服务器规划

最小部署

角色数量配置说明
应用服务器14核8G运行 node.exe + Nginx
数据存储1大容量磁盘NAS/本地磁盘

高可用部署

角色数量配置说明
负载均衡22核4GNginx/HAProxy
应用服务器2+4核8G运行 node.exe
文件存储1大容量NAS 共享存储

部署步骤

1. 准备服务器

在每台应用服务器上:

bash
# 创建应用目录
sudo mkdir -p /opt/gisnode

# 创建数据目录(如果使用 NAS,挂载到此处)
sudo mkdir -p /opt/gisnode/data

2. 部署程序

bash
# 上传发布包到服务器
scp gisnode.zip user@server:/opt/

# 解压
cd /opt
unzip gisnode.zip -d gisnode

# 设置权限
chmod +x /opt/gisnode/node.exe
chmod -R 755 /opt/gisnode/data/

3. 配置服务

使用 systemd 管理进程:

bash
sudo nano /etc/systemd/system/gisnode.service
ini
[Unit]
Description=逸云 GIS 服务器
After=network.target

[Service]
Type=simple
User=gisnode
WorkingDirectory=/opt/gisnode
ExecStart=/opt/gisnode/node.exe
Restart=on-failure
RestartSec=10
Environment=NODE_ENV=production

[Install]
WantedBy=multi-user.target

启动服务:

bash
sudo systemctl daemon-reload
sudo systemctl start gisnode
sudo systemctl enable gisnode

4. 配置 .env

私有云部署通常使用 Nginx 代理模式,.env 配置:

bash
PORT=3000
NODE_ENV=production
TRUST_PROXY=true
CORS_ORIGIN=https://gis.yourcompany.com

如果内网不需要 HTTPS,也可以使用直接访问模式,参考 环境配置

5. 配置 Nginx

参考 Nginx 配置 设置反向代理和 HTTPS。

多实例部署

负载均衡配置

在多台服务器上部署时,Nginx 负载均衡:

nginx
upstream gisnode {
    server 10.0.1.10:3000;
    server 10.0.1.11:3000;
}

注意: 多实例部署需要共享 data/ 目录(使用 NAS),否则数据不一致。

共享数据目录

使用 NFS 共享数据目录:

bash
# NFS 服务端
sudo apt install nfs-kernel-server
echo "/opt/gisnode/data 10.0.1.0/24(rw,sync,no_subtree_check)" | sudo tee -a /etc/exports
sudo exportfs -a

# NFS 客户端
sudo apt install nfs-common
sudo mount -t nfs 10.0.1.100:/opt/gisnode/data /opt/gisnode/data

网络配置

防火墙规则

bash
# 允许外部访问
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT

# 内部通信
sudo iptables -A INPUT -s 10.0.0.0/8 -j ACCEPT

内网 DNS

配置内部 DNS 解析:

gis.yourcompany.com -> 10.0.1.10

安全加固

  1. 服务器安全

    • 关闭不必要的端口
    • 定期更新系统补丁
    • 配置 fail2ban
  2. 应用安全

    • 启用 HTTPS(通过 Nginx)
    • 配置 .env 中的 CORS 来源
    • 限制 3000 端口仅内部访问
  3. 数据安全

    • 定期备份 data/ 目录
    • NAS 存储启用快照
    • 访问审计日志

基于 MIT 许可发布