麻醉评估系统Windows Server 2019 部署手册
Table of Contents
本文档介绍如何在 Windows Server 2019 环境下使用 PowerShell 部署 hospital 项目. 部署时假设你已经获得了包含所有前端资源的 hospital-standalone.jar, 无需在目标服务器上重新打包或构建.
1. 先决条件
在开始部署之前, 请确保已经安装并配置好以下软件:
JDK 17 及以上版本. 可以通过
winget安装, 例如:winget install --id=EclipseAdoptium.Temurin.17.JDK -e
安装完成后重新打开 PowerShell, 确保
java命令可正常运行.- 不联网情况下, 可以在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 服务, 可结合 nssm 或 New-Service 等工具自行配置.
6. 访问地址 (Access URL)
应用启动后,可以通过以下 URL 访问不同页面:
- 后端服务主页 (Web):http://<服务器ip>:$env:port
- Flutter 移动端 Web 应用:http://<服务器ip>:$env:port/pad/index.html
7. 常见问题
- 如遇端口冲突, 可修改
PORT环境变量后重新启动. - 确保在生产环境中为
COOKIE_SECRET指定足够强度的随机值. - 若需更改医院名称, 请设置
HOSPITAL_NAME环境变量后重启.
以上即为在 Windows Server 2019 上部署 hospital 项目的基本步骤, 如有更多定制化需求, 可根据实际情况调整脚本.