WorldVistA/VistA项目Vagrant集成部署指南
什么是Vagrant
Vagrant是一款开源的虚拟化环境管理工具,它能够帮助开发者快速构建和配置一致的开发环境。通过与多种虚拟化平台(如VirtualBox、VMware等)的集成,Vagrant可以自动化完成虚拟机的创建、配置和部署过程。
在WorldVistA/VistA项目中,Vagrant被用于快速搭建一个包含完整VistA系统的开发环境,这对于想要学习或开发VistA系统的用户来说非常方便。
为什么选择Vagrant
Vagrant在WorldVistA/VistA项目中的应用具有以下优势:
- 环境一致性:确保所有开发者使用相同的系统配置
- 快速部署:自动化安装过程大大缩短了环境搭建时间
- 跨平台支持:可在Windows、macOS和Linux系统上运行
- 隔离性:开发环境与主机系统完全隔离
- 可重复性:可以轻松销毁和重建环境
环境准备
1. 安装必要软件
在开始之前,需要安装以下三个核心组件:
- Vagrant:从官方网站下载最新版本,选择适合您操作系统的安装包
- VirtualBox:作为Vagrant的虚拟机提供者,同样需要下载对应版本
- Git:用于获取WorldVistA/VistA项目代码
安装过程均为标准的向导式安装,接受默认选项即可完成。
2. 安装Vagrant插件
为避免共享文件夹挂载问题,建议安装vagrant-vbguest插件:
vagrant plugin install vagrant-vbguest
这个插件会自动处理VirtualBox Guest Additions的安装和更新。
获取WorldVistA/VistA项目
使用Git克隆项目仓库到本地开发目录:
mkdir ~/Development
cd ~/Development
git clone [VistA仓库地址]
克隆完成后,项目文件将被下载到本地~/Development/VistA目录中。
启动VistA环境
进入项目中的Vagrant配置目录:
cd ~/Development/VistA/Scripts/Install/Ubuntu
执行以下命令启动虚拟机并自动安装VistA系统:
vagrant up
这个过程大约需要30分钟,期间会显示大量安装日志信息。绿色文本表示标准输出,红色文本表示标准错误,但并非所有红色文本都代表真正的错误。
访问VistA系统
虚拟机启动后,会自动配置以下服务端口:
- 9430:RPC Broker端口(用于CPRS等GUI应用)
- 8001:VistA Link端口
- 22/2222:SSH端口(2222用于VirtualBox环境)
用户账户
系统预置了多个测试账户:
-
系统管理员:
- 访问码:SM1234
- 验证码:SM1234!!!
-
医生账户:
- 访问码:fakedoc1
- 验证码:1Doc!@#$
- 电子签名:ROBA123
-
护士账户:
- 访问码:fakenurse1
- 验证码:1Nur!@#$
- 电子签名:MARYS123
-
文员账户:
- 访问码:fakeclerk1
- 验证码:1Cle!@#$
- 电子签名:CLERKJ123
访问方式
-
SSH访问:
- 普通用户:
ssh -p 2222 osehratied@localhost(密码:tied) - 程序员用户:
ssh -p 2222 osehraprog@localhost(密码:prog) - Linux用户:
vagrant ssh
- 普通用户:
-
MUMPS环境: 通过SSH登录后,执行
mumps -dir进入MUMPS编程环境 -
VistA登录界面: 在MUMPS环境中执行
D ^ZU命令
EWD.js集成
Vagrant环境默认安装了EWD.js,相关配置如下:
-
端口:
- EWD.js: 8080 (HTTPS)
- EWDRest: 8000 (HTTPS)
- EWDVistATerm: 8081 (HTTPS)
-
服务管理:
sudo service osehra-vista-ewdjs {start|stop|restart} -
日志位置: 位于
/home/osehra/log/目录下
虚拟机管理
-
暂停虚拟机:
vagrant suspend -
恢复虚拟机:
vagrant resume -
停止虚拟机:
vagrant halt -
销毁虚拟机:
vagrant destroy
技术实现细节
WorldVistA/VistA的Vagrant集成主要通过两个核心文件实现:
-
Vagrantfile:
- 定义虚拟机的基本配置
- 指定使用的操作系统镜像
- 配置网络和共享文件夹
- 定义Provisioner及其执行顺序
-
autoInstaller.sh:
- 自动化安装脚本
- 处理所有依赖项的安装
- 配置GT.M数据库
- 导入VistA例程和全局变量
- 执行基线测试并填充测试数据
这套自动化部署方案极大地简化了WorldVistA/VistA系统的安装过程,使开发者能够快速获得一个可用的开发环境,专注于VistA系统的学习和开发工作。
Kimi-K2.5Kimi K2.5 是一款开源的原生多模态智能体模型,它在 Kimi-K2-Base 的基础上,通过对约 15 万亿混合视觉和文本 tokens 进行持续预训练构建而成。该模型将视觉与语言理解、高级智能体能力、即时模式与思考模式,以及对话式与智能体范式无缝融合。Python00- QQwen3-Coder-Next2026年2月4日,正式发布的Qwen3-Coder-Next,一款专为编码智能体和本地开发场景设计的开源语言模型。Python00
xw-cli实现国产算力大模型零门槛部署,一键跑通 Qwen、GLM-4.7、Minimax-2.1、DeepSeek-OCR 等模型Go06
PaddleOCR-VL-1.5PaddleOCR-VL-1.5 是 PaddleOCR-VL 的新一代进阶模型,在 OmniDocBench v1.5 上实现了 94.5% 的全新 state-of-the-art 准确率。 为了严格评估模型在真实物理畸变下的鲁棒性——包括扫描伪影、倾斜、扭曲、屏幕拍摄和光照变化——我们提出了 Real5-OmniDocBench 基准测试集。实验结果表明,该增强模型在新构建的基准测试集上达到了 SOTA 性能。此外,我们通过整合印章识别和文本检测识别(text spotting)任务扩展了模型的能力,同时保持 0.9B 的超紧凑 VLM 规模,具备高效率特性。Python00
KuiklyUI基于KMP技术的高性能、全平台开发框架,具备统一代码库、极致易用性和动态灵活性。 Provide a high-performance, full-platform development framework with unified codebase, ultimate ease of use, and dynamic flexibility. 注意:本仓库为Github仓库镜像,PR或Issue请移步至Github发起,感谢支持!Kotlin08
VLOOKVLOOK™ 是优雅好用的 Typora/Markdown 主题包和增强插件。 VLOOK™ is an elegant and practical THEME PACKAGE × ENHANCEMENT PLUGIN for Typora/Markdown.Less00