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系统的学习和开发工作。
- DDeepSeek-V3.1-BaseDeepSeek-V3.1 是一款支持思考模式与非思考模式的混合模型Python00
- QQwen-Image-Edit基于200亿参数Qwen-Image构建,Qwen-Image-Edit实现精准文本渲染与图像编辑,融合语义与外观控制能力Jinja00
GitCode-文心大模型-智源研究院AI应用开发大赛
GitCode&文心大模型&智源研究院强强联合,发起的AI应用开发大赛;总奖池8W,单人最高可得价值3W奖励。快来参加吧~056CommonUtilLibrary
快速开发工具类收集,史上最全的开发工具类,欢迎Follow、Fork、StarJava04GitCode百大开源项目
GitCode百大计划旨在表彰GitCode平台上积极推动项目社区化,拥有广泛影响力的G-Star项目,入选项目不仅代表了GitCode开源生态的蓬勃发展,也反映了当下开源行业的发展趋势。07GOT-OCR-2.0-hf
阶跃星辰StepFun推出的GOT-OCR-2.0-hf是一款强大的多语言OCR开源模型,支持从普通文档到复杂场景的文字识别。它能精准处理表格、图表、数学公式、几何图形甚至乐谱等特殊内容,输出结果可通过第三方工具渲染成多种格式。模型支持1024×1024高分辨率输入,具备多页批量处理、动态分块识别和交互式区域选择等创新功能,用户可通过坐标或颜色指定识别区域。基于Apache 2.0协议开源,提供Hugging Face演示和完整代码,适用于学术研究到工业应用的广泛场景,为OCR领域带来突破性解决方案。00openHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!C0381- WWan2.2-S2V-14B【Wan2.2 全新发布|更强画质,更快生成】新一代视频生成模型 Wan2.2,创新采用MoE架构,实现电影级美学与复杂运动控制,支持720P高清文本/图像生成视频,消费级显卡即可流畅运行,性能达业界领先水平Python00
- GGLM-4.5-AirGLM-4.5 系列模型是专为智能体设计的基础模型。GLM-4.5拥有 3550 亿总参数量,其中 320 亿活跃参数;GLM-4.5-Air采用更紧凑的设计,拥有 1060 亿总参数量,其中 120 亿活跃参数。GLM-4.5模型统一了推理、编码和智能体能力,以满足智能体应用的复杂需求Jinja00
Yi-Coder
Yi Coder 编程模型,小而强大的编程助手HTML013
热门内容推荐
最新内容推荐
项目优选









