
bioxydyn/voxelflow_baseVoxelFlow是一个Python框架,设计用于MRI数据集的大规模和小规模分析。它支持分析pipeline的实验与定义,并可进行规模化部署。本镜像作为VoxelFlow的基础运行环境,提供了框架运行所需的依赖、配置基础及部署支持。
/api/health-check健康检查端点,支持系统状态与资源监控克隆代码仓库:
bashgit clone [***] cd voxelflow
安装系统依赖:
bashbrew install eigen tmux ceres-solver glog
apt、yum等)配置虚拟环境:
bashpython3 -m venv venv source venv/bin/activate # 激活虚拟环境
安装依赖并部署:
bashpip install -r requirements.txt pip install -e . # 以开发模式安装
VoxelFlow依赖MongoDB,推荐通过Docker部署:
拉取MongoDB镜像:
bashdocker pull mongo:5.0
启动MongoDB容器:
bashdocker run -p 27017:27017 --restart=always --name voxelflow-db -d mongo:5.0
配置数据库连接:
bashexport VOXELFLOW_USE_LOCAL_DB=true
bashexport VOXELFLOW_PRODUCTION=false export VOXELFLOW_DB_HOST=192.168.50.201 export VOXELFLOW_DB_PORT=27017 export VOXELFLOW_DB_PASSWORD=mytopsecretpassword
开发模式:
bashvoxelflow --dev
访问地址:http://localhost:4975
默认管理员账号:administrator,密码:rutherford!2009(可通过VOXELFLOW_DEFAULT_ADMINISTRATOR_PASSWORD修改)
分布式模式:
bashexport VOXELFLOW_DISTRIBUTED_MODE=true voxelflow --dev # 本地机器作为worker节点
| 变量名 | 描述 | 默认值 |
|---|---|---|
VOXELFLOW_DISTRIBUTED_MODE | 是否启用分布式模式 | false |
VOXELFLOW_USE_LOCAL_DB | 是否使用本地MongoDB | true |
VOXELFLOW_DATABASE_NAME | MongoDB数据库名称 | voxelflow_db |
VOXELFLOW_DEFAULT_ADMINISTRATOR_PASSWORD | 默认管理员密码 | rutherford!2009 |
VOXELFLOW_2FA_ENABLE | 启用双因素认证 | false |
VOXELFLOW_SNAPSHOT_ENABLE | 启用快照功能 | false |
VOXELFLOW_USE_S3_AS_BLOB_STORE | 使用S3存储blob | false |
VOXELFLOW_AUDIT_LOGS_ENABLE | 启用审计日志 | false |
安装依赖:
bashcd web/frontend npm install --save --legacy-peer-deps
启动开发服务器:
bashnpm start # 访问 http://localhost:3000
需同时运行后端服务:
voxelflow --dev
单元测试:
bashpytest --cov voxelflow tests/unit
集成测试:
bashpytest tests/integration
本地CI测试:
bash./gh.sh # 模拟GitHub Actions检查
bashvoxelflow --build-docs # 生成文档 xdg-open documentation/index.html # Linux系统查看文档
启用快照需配置:
bashexport VOXELFLOW_DISTRIBUTED_MODE=true export VOXELFLOW_SNAPSHOT_ENABLE=true export VOXELFLOW_SNAPSHOT_ENDPOINT_URL=<S3端点URL> export VOXELFLOW_SNAPSHOT_ACCESS_KEY=<访问密钥> export VOXELFLOW_SNAPSHOT_SECRET_KEY=<密钥> export VOXELFLOW_SNAPSHOT_BUCKET=<桶名称>
通过管理员账户在Web界面管理快照,配置VOXELFLOW_SCHEDULE_BACKUP=true可启用每日自动备份。
配置S3作为blob存储后端:
bashexport VOXELFLOW_USE_S3_AS_BLOB_STORE=true export VOXELFLOW_S3_BLOB_STORE_ACCESS_KEY=<访问密钥> export VOXELFLOW_S3_BLOB_STORE_SECRET_KEY=<密钥> export VOXELFLOW_S3_BLOB_STORE_ENDPOINT_URL=<S3端点URL> export VOXELFLOW_S3_BLOB_STORE_BUCKET=<桶名称>
VoxelFlow在MongoDB中使用的主要集合包括:
docs:存储所有项目文档数据projects:项目元数据(ID、名称等)experiments:实验元数据(配置、状态等)users:用户信息(账号、权限等)jobs:任务记录(通常任务完成后删除)audit_logs:审计日志(需VOXELFLOW_AUDIT_LOGS_ENABLE=true)voxelflow.jobs_results.files等用于存储大文件数据manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务