麻醉评估系统Windows Server 2019 部署手册

Table of Contents

本文档介绍如何在 Windows Server 2019 环境下使用 PowerShell 部署 hospital 项目. 部署时假设你已经获得了包含所有前端资源的 hospital-standalone.jar, 无需在目标服务器上重新打包或构建.

1. 先决条件

在开始部署之前, 请确保已经安装并配置好以下软件:

  1. JDK 17 及以上版本. 可以通过 winget 安装, 例如:

    winget install --id=EclipseAdoptium.Temurin.17.JDK -e
    

    安装完成后重新打开 PowerShell, 确保 java 命令可正常运行.

  2. 不联网情况下, 可以在zulu网站下载

2. 获取 jar 包

从发布渠道或构建环境中获取已经打包好的 hospital-standalone.jar, 并将其复制到服务器任意目录(下文示例使用 C:\apps\hospital). 无需在服务器上克隆仓库或安装额外依赖.

3. 配置环境变量

hospital-standalone.jar 已包含默认的 system.edn, 其中关键配置通过 #env 标签读取环境变量. 只需在启动前设置以下变量即可:

$env:PORT = 3000            # 可根据需要修改端口
$env:COOKIE_SECRET = "请修改为安全的随机字符串"
$env:HOSPITAL_NAME = "示例医院"        # 可根据实际情况修改

# 主库数据库(生产环境建议 Oracle 11g)
$env:JDBC_URL = "jdbc:oracle:thin:@192.192.2.11:1521/orcl"  # Oracle 11g 示例(按实际 serviceName 修改)
$env:JDBC_USERNAME = "app_user"
$env:JDBC_PASSWORD = "app_password"

# 生产环境主库迁移与查询脚本选择(可选: 不设置时按 system.edn 的 prod 默认值)
$env:DB_MIGRATIONS = "migrations/oracle"     # 指向 Oracle 11g 迁移目录
$env:DB_SQL_QUERIES = "sql/queries_oracle.sql" # 指向 Oracle 11g HugSQL 查询文件

# HIS 外部系统(Oracle)连接(如需启用 HIS 查询)
$env:ORACLE_JDBC_URL = "jdbc:oracle:thin:@192.192.2.11:1521/his"
$env:ORACLE_USERNAME = "his_user"
$env:ORACLE_PASSWORD = "his_password"

# LIS 数据库(生产: SQLServer)
$env:SQLSERVER_JDBC_URL = "jdbc:sqlserver://192.192.0.91:1433;databaseName=rmlis6;trustServerCertificate=true;encrypt=false"
$env:SQLSERVER_USERNAME = "lis数据库用户名"
$env:SQLSERVER_PASSWORD = "lis数据库密码"

# 心电图数据库(生产: SQLServer)
$env:ECG_SQLSERVER_JDBC_URL = "jdbc:sqlserver://192.192.0.115:1433;databaseName=NLEMR;encrypt=true;trustServerCertificate=true;sslProtocol=TLSv1"
$env:ECG_SQLSERVER_USERNAME = "ecg数据库用户名"
$env:ECG_SQLSERVER_PASSWORD = "ecg数据库密码"

# PACS 数据库(生产: Oracle 11g/19c 均可)
$env:PACS_JDBC_URL = "jdbc:oracle:thin:@192.192.2.49:1521/pacsdb"
$env:PACS_USERNAME = "neusoftpacs"
$env:PACS_PASSWORD = "neusoftpacs"

如果想在每次系统启动时自动设置这些变量, 可以将以上命令写入专用的启动脚本.

4. 设置控制台编码

为避免 PowerShell 显示中文时出现乱码, 可在运行前执行:

chcp 65001

必要时也可以在启动命令中加入 -Dfile.encoding=UTF-8, 让 JVM 使用统一的 UTF-8 编码.

5. 运行

将 jar 包放置好并配置好环境变量后, 使用以下命令启动服务(假设 jar 位于 C:\apps\hospital):

java -jar C:\apps\hospital\hospital-standalone.jar

启动后即可通过 http://<服务器IP>:$env:PORT 访问应用.

如需在后台运行或注册为 Windows 服务, 可结合 nssmNew-Service 等工具自行配置.

6. 访问地址 (Access URL)

应用启动后,可以通过以下 URL 访问不同页面:

7. 常见问题

  • 如遇端口冲突, 可修改 PORT 环境变量后重新启动.
  • 确保在生产环境中为 COOKIE_SECRET 指定足够强度的随机值.
  • 若需更改医院名称, 请设置 HOSPITAL_NAME 环境变量后重启.

以上即为在 Windows Server 2019 上部署 hospital 项目的基本步骤, 如有更多定制化需求, 可根据实际情况调整脚本.

Author: 青岛红创

Created: 2025-12-13 Sat 14:49