# REDCap部署指南与环境要求详? > **文档版本?* v1.0 > **创建日期?* 2025-12-30 > **文档目的?* 详细说明REDCap的部署要求、复杂度、软硬件条件 > **阅读时间?* 25分钟 > **重要性:** ⭐⭐⭐⭐?**对接前必?* --- ## 📋 执行摘要 **核心结论**? - ?**是的,对接REDCap前必须先部署REDCap服务?* - 🟡 **部署复杂度:中等**?.5/5分) - ⏱️ **部署时间**? - 测试环境(Docker):1-2小时 - 生产环境(手动)?-2? - 生产环境(含安全加固):3-5? - 💰 **成本**? - 测试环境?0(本地开发) - 生产环境?500-3000/月(云服务器? **关键前置条件**? 1. 🔑 **获得REDCap许可**(加入联盟,签署EULA? 2. 💾 **下载REDCap源代?*(redcap15.8.0.zip? 3. 🖥?**准备服务器环?*(LAMP/LEMP栈) 4. 📧 **配置SMTP邮件服务**(必需? --- ## 🎯 部署前必读:您需要什么? ### 1. REDCap许可与源代码获取(?最关键? #### 获取流程 ``` Step 1: 申请加入REDCap联盟 ? 访问:https://projectredcap.org/join/ ? 填写机构信息(医?大学/研究机构? ? 等待审批?-4周) Step 2: 签署最终用户许可协议(EULA? ? 法律审查(禁止商业用途) ? 机构授权人签? Step 3: 下载REDCap软件? ? 登录联盟成员门户 ? 下载:redcap_vX.X.X.zip(约50-80MB? ``` #### 许可限制(⚠?重要? ``` ?允许? - 非商业研究用? - 机构内部使用 - 开发External Modules(开源共享) ?禁止? - 商业化销? - 未经授权的再分发 - 修改核心代码后闭? ⚠️ 灰色地带? - 提供REDCap托管服务(需咨询范德堡大学) - 基于REDCap开发商业产品(你们的情况) ?建议:咨询法律顾问,可能需要额外协? ``` #### 您的情况分析 ``` 壹证循科技的商业模式: - REDCap?客户已有"的系? - 你们提供的是"AI增值服?(DC/SSA模块? - 通过External Module连接 合规性评估: ?可能合规(提供插件,不销售REDCap本身? ⚠️ 需确认:是否帮客户部署REDCap? - 如果只是对接客户现有REDCap ??合规 - 如果你们部署REDCap并收??⚠️ 灰色地带 建议? 1. 与范德堡大学确认商业用途许? 2. 或者:只对接客户现有的REDCap(不提供部署? ``` --- ## 🖥?软硬件要求详? ### 服务器配置要? #### 开?测试环境 ```yaml 用? 本地开发、功能测试、External Module开? 最低配? CPU: 2? 内存: 4GB 硬盘: 20GB SSD 系统: Windows 10/11 ?macOS ?Linux 推荐配置: CPU: 4? 内存: 8GB 硬盘: 50GB SSD 系统: Ubuntu 22.04 LTS 成本: $0(使用个人电脑或Mac? ``` #### 生产环境(小型) ```yaml 用? 1-5个项目,<1000条记? 最低配? CPU: 2?@ 2.5GHz+ 内存: 8GB 硬盘: 100GB SSD 带宽: 10Mbps 系统: Ubuntu 22.04 LTS / CentOS 8 数据? MySQL: 5.7+ ?MariaDB 10.3+ 存储: 20GB(独立磁盘) Web服务? Apache 2.4+ ?Nginx 1.18+ PHP: 7.4 / 8.0 / 8.1 / 8.2 云服务器参? 阿里? ecs.c6.large??GB??¥500/? AWS: t3.large??GB??$70/? 腾讯? SA2.MEDIUM4??GB??¥450/? 年度成本: $6K-8K ``` #### 生产环境(中型) ```yaml 用? 10-50个项目,10K-100K条记? 推荐配置: CPU: 4?@ 3.0GHz+ 内存: 16GB 硬盘: 500GB SSD(或SAN存储? 带宽: 50Mbps 系统: Ubuntu 22.04 LTS 数据? MySQL: 8.0+ ?MariaDB 10.5+ 存储: 200GB(独立服务器? 连接? 最?00 Web服务? Apache 2.4+ ?Nginx 1.20+ PHP: 8.1+(性能最优) PHP-FPM进程? 50-100 负载均衡: 可选:多Web节点 + LB 云服务器参? 阿里? ecs.c6.xlarge??6GB??¥1200/? AWS: t3.xlarge??6GB??$150/? 年度成本: $15K-20K ``` #### 生产环境(大?企业级) ```yaml 用? 100+项目?00?记录,多机构部署 架构: Web? 2-4台Web服务器(负载均衡? - 每台: 8?6GB 数据库层: 主从架构 - 主库: 16?2GB - 从库: 16?2GB(读负载分担? 存储? - 文件服务? NFS/对象存储 - 容量: 2TB-5TB 缓存? - Redis: 8?6GB 高可? - 数据库主从切? - Web节点故障转移 - 每日备份+异地容灾 监控: - Prometheus + Grafana - 日志聚合(ELK? - APM监控 云服务器参? 总成? ¥15K-30K/? 年度成本: $50K-100K ``` ### 软件依赖清单 #### 必需组件 ```bash # 操作系统(任选其一? Ubuntu 22.04 LTS # 推荐 CentOS 8 / Rocky Linux 8 # 企业? Debian 11 # Web服务器(任选其一? Apache 2.4+ # REDCap官方推荐 - mod_rewrite enabled - mod_ssl enabled - mod_headers enabled Nginx 1.18+ # 性能更好,配置复? # PHP(推?.1? PHP 7.4 / 8.0 / 8.1 / 8.2 - PHP-FPM - php-cli - php-mysql / php-mysqli - php-gd - php-curl - php-zip - php-mbstring - php-xml - php-json - php-ldap(如需LDAP认证? - php-soap(如需Web Service集成? # 数据库(任选其一? MySQL 5.7+ / 8.0+ # 主流选择 MariaDB 10.3+ / 10.5+ # 开源替? # PHP配置要求 upload_max_filesize = 32M post_max_size = 32M max_execution_time = 300 memory_limit = 256M ``` #### 可选组件(增强功能? ```bash # SMTP服务器(邮件通知? 必需:用于发送调查邀请、密码重置等 选项? - SendGrid(推荐,云服务) - Amazon SES - 自建Postfix - 企业SMTP(Office 365、Gmail? # SSL证书(HTTPS? 必需:生产环境强制要? 选项? - Let's Encrypt(免费) - 商业证书(GeoTrust、DigiCert? - 企业内部CA # LDAP/Active Directory(单点登录) 可选:企业环境推荐 - OpenLDAP - Microsoft AD - Azure AD # 防火?WAF 推荐? - UFW / firewalld(主机防火墙? - ModSecurity(Web应用防火墙) - Cloudflare(CDN + DDoS防护? # 监控工具 推荐? - New Relic APM - Datadog - Prometheus + Grafana ``` --- ## 🐳 部署方案对比 ### 方案1:Docker容器部署(⭐ 推荐用于开?测试? #### 优势 ``` ?快速启动(1小时内完成) ?环境隔离(不污染主机? ?易于迁移(容器可移植? ?版本管理(镜像标签) ?易于销毁重建(测试理想? ``` #### 完整Docker Compose配置 ```yaml # docker-compose.yml version: '3.8' services: # MySQL数据? redcap-db: image: mysql:8.0 container_name: redcap-mysql restart: unless-stopped environment: MYSQL_ROOT_PASSWORD: redcap_root_123 MYSQL_DATABASE: redcap MYSQL_USER: redcap_user MYSQL_PASSWORD: redcap_pass_456 volumes: - redcap-db-data:/var/lib/mysql - ./mysql-init:/docker-entrypoint-initdb.d ports: - "3306:3306" networks: - redcap-network command: --default-authentication-plugin=mysql_native_password # PHPMyAdmin(数据库管理? phpmyadmin: image: phpmyadmin/phpmyadmin container_name: redcap-phpmyadmin restart: unless-stopped environment: PMA_HOST: redcap-db PMA_USER: root PMA_PASSWORD: redcap_root_123 ports: - "8081:80" networks: - redcap-network depends_on: - redcap-db # Apache + PHP + REDCap redcap-web: image: php:8.1-apache container_name: redcap-apache restart: unless-stopped ports: - "8080:80" volumes: # REDCap源代码(需手动解压到此目录? - ./redcap15.8.0:/var/www/html # Apache配置 - ./apache/redcap.conf:/etc/apache2/sites-available/000-default.conf # PHP配置 - ./php/php.ini:/usr/local/etc/php/php.ini # 上传文件存储 - redcap-edocs:/var/www/html/edocs - redcap-temp:/var/www/html/temp environment: REDCAP_DB_HOST: redcap-db REDCAP_DB_NAME: redcap REDCAP_DB_USER: redcap_user REDCAP_DB_PASS: redcap_pass_456 networks: - redcap-network depends_on: - redcap-db # 安装PHP扩展 command: > bash -c " docker-php-ext-install mysqli pdo pdo_mysql gd zip && a2enmod rewrite ssl headers && apache2-foreground " networks: redcap-network: driver: bridge volumes: redcap-db-data: redcap-edocs: redcap-temp: ``` #### 部署步骤(Docker方案? ```bash # Step 1: 创建项目目录 mkdir redcap-docker && cd redcap-docker # Step 2: 解压REDCap源码 unzip redcap_v15.8.0.zip # 得到: redcap15.8.0/ 目录 # Step 3: 创建docker-compose.yml # (粘贴上面的配置? # Step 4: 创建Apache配置 mkdir apache cat > apache/redcap.conf << 'EOF' ServerName localhost DocumentRoot /var/www/html/redcap Options -Indexes +FollowSymLinks AllowOverride All Require all granted ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined EOF # Step 5: 创建PHP配置 mkdir php cat > php/php.ini << 'EOF' upload_max_filesize = 32M post_max_size = 32M max_execution_time = 300 memory_limit = 256M date.timezone = Asia/Shanghai EOF # Step 6: 启动容器 docker-compose up -d # Step 7: 检查容器状? docker-compose ps # 应该看到3个容器运行中 # Step 8: 访问REDCap安装向导 # 打开浏览器:http://localhost:8080/install.php # Step 9: 按照向导完成安装 # - 数据库配置: # Host: redcap-db # Database: redcap # Username: redcap_user # Password: redcap_pass_456 # Step 10: 安装完成后,访问REDCap # http://localhost:8080/ ``` #### Docker方案的坑? ``` ⚠️ ?: 文件权限问题 症状: 上传文件失败,无法写入edocs目录 解决: docker exec -it redcap-apache bash chown -R www-data:www-data /var/www/html/edocs chown -R www-data:www-data /var/www/html/temp ⚠️ ?: 数据库连接失? 症状: REDCap无法连接MySQL 原因: 容器网络未就? 解决: # 等待MySQL完全启动?0秒) docker-compose logs redcap-db # 看到 "ready for connections" 后再访问install.php ⚠️ ?: PHP扩展缺失 症状: 提示缺少GD库、ZIP? 解决: # 进入容器安装 docker exec -it redcap-apache bash docker-php-ext-install gd zip mysqli service apache2 reload ⚠️ ?: 性能问题 症状: 页面加载慢(Docker on Windows/Mac? 原因: 文件I/O性能? 解决: # 使用命名卷而非绑定挂载 volumes: - redcap-code:/var/www/html # 命名卷(快) # 不要: - ./redcap:/var/www/html # 绑定挂载(慢? ``` --- ### 方案2:手动部署(生产环境推荐? #### Ubuntu 22.04 LTS部署脚本 ```bash #!/bin/bash # REDCap生产环境自动化部署脚? # 适用于:Ubuntu 22.04 LTS set -e # 遇到错误立即退? echo "========================================" echo "REDCap 15.8.0 自动化部署脚? echo "========================================" # ========== 1. 系统更新 ========== echo "[Step 1] 更新系统..." apt update && apt upgrade -y # ========== 2. 安装Apache ========== echo "[Step 2] 安装Apache 2.4..." apt install -y apache2 a2enmod rewrite ssl headers systemctl enable apache2 systemctl start apache2 # ========== 3. 安装PHP 8.1 ========== echo "[Step 3] 安装PHP 8.1..." apt install -y software-properties-common add-apt-repository -y ppa:ondrej/php apt update apt install -y \ php8.1 \ php8.1-cli \ php8.1-fpm \ php8.1-mysql \ php8.1-gd \ php8.1-curl \ php8.1-zip \ php8.1-mbstring \ php8.1-xml \ php8.1-ldap \ php8.1-soap \ libapache2-mod-php8.1 # 配置PHP cat > /etc/php/8.1/apache2/conf.d/99-redcap.ini << 'EOF' upload_max_filesize = 32M post_max_size = 32M max_execution_time = 300 memory_limit = 256M date.timezone = Asia/Shanghai EOF systemctl restart apache2 # ========== 4. 安装MySQL 8.0 ========== echo "[Step 4] 安装MySQL 8.0..." apt install -y mysql-server mysql-client # 启动MySQL systemctl enable mysql systemctl start mysql # 安全加固MySQL mysql -e "ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'YourStrongRootPassword123!';" mysql -e "DELETE FROM mysql.user WHERE User='';" mysql -e "DELETE FROM mysql.user WHERE User='root' AND Host NOT IN ('localhost', '127.0.0.1', '::1');" mysql -e "DROP DATABASE IF EXISTS test;" mysql -e "DELETE FROM mysql.db WHERE Db='test' OR Db='test\\_%';" mysql -e "FLUSH PRIVILEGES;" # 创建REDCap数据库和用户 REDCAP_DB_PASS=$(openssl rand -base64 32) mysql -uroot -p'YourStrongRootPassword123!' << EOF CREATE DATABASE redcap CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER 'redcap_user'@'localhost' IDENTIFIED BY '${REDCAP_DB_PASS}'; GRANT ALL PRIVILEGES ON redcap.* TO 'redcap_user'@'localhost'; FLUSH PRIVILEGES; EOF echo "数据库密码(请保存)?{REDCAP_DB_PASS}" # ========== 5. 部署REDCap代码 ========== echo "[Step 5] 部署REDCap代码..." # 上传redcap15.8.0.zip?/tmp/ # 手动或通过SCP上传 # scp redcap_v15.8.0.zip user@server:/tmp/ cd /var/www/html unzip /tmp/redcap_v15.8.0.zip mv redcap redcap_v15.8.0 # 创建符号链接(方便版本切换) ln -s redcap_v15.8.0 redcap # 设置权限 chown -R www-data:www-data /var/www/html/redcap chmod -R 755 /var/www/html/redcap chmod -R 777 /var/www/html/redcap/edocs chmod -R 777 /var/www/html/redcap/temp # ========== 6. 配置Apache虚拟主机 ========== echo "[Step 6] 配置Apache..." cat > /etc/apache2/sites-available/redcap.conf << 'EOF' ServerName redcap.yourdomain.com ServerAdmin admin@yourdomain.com DocumentRoot /var/www/html/redcap Options -Indexes +FollowSymLinks AllowOverride All Require all granted # 安全? Header always set X-Content-Type-Options "nosniff" Header always set X-Frame-Options "SAMEORIGIN" Header always set X-XSS-Protection "1; mode=block" ErrorLog ${APACHE_LOG_DIR}/redcap_error.log CustomLog ${APACHE_LOG_DIR}/redcap_access.log combined EOF # 启用站点 a2ensite redcap.conf a2dissite 000-default.conf systemctl reload apache2 # ========== 7. 配置防火?========== echo "[Step 7] 配置防火?.." ufw allow 22/tcp # SSH ufw allow 80/tcp # HTTP ufw allow 443/tcp # HTTPS ufw --force enable # ========== 8. 安装Let's Encrypt SSL证书 ========== echo "[Step 8] 安装SSL证书..." apt install -y certbot python3-certbot-apache # 自动获取证书(需要域名已解析到此服务器) # certbot --apache -d redcap.yourdomain.com --non-interactive --agree-tos --email admin@yourdomain.com # ========== 9. 配置Cron任务 ========== echo "[Step 9] 配置Cron任务..." cat > /etc/cron.d/redcap << 'EOF' # REDCap Cron任务 */1 * * * * www-data php /var/www/html/redcap/cron.php > /dev/null 2>&1 EOF # ========== 10. 完成 ========== echo "========================================" echo "?REDCap部署完成? echo "========================================" echo "" echo "📝 下一步:" echo "1. 访问:http://your-server-ip/install.php" echo "2. 按照向导完成安装" echo "3. 数据库配置:" echo " Host: localhost" echo " Database: redcap" echo " Username: redcap_user" echo " Password: ${REDCAP_DB_PASS}" echo "" echo "⚠️ 请务必保存数据库密码? ``` #### 手动部署的坑? ``` ⚠️ ?: SELinux阻止(CentOS/RHEL? 症状: Permission denied错误 解决: setenforce 0 sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config ⚠️ ?: 文件上传失败 症状: edocs目录无写权限 解决: chown -R www-data:www-data /var/www/html/redcap/edocs chmod -R 777 /var/www/html/redcap/edocs ⚠️ ?: Cron任务不执? 症状: 计划任务、邮件不发? 解决: # 检查cron日志 tail -f /var/log/syslog | grep CRON # 手动测试cron sudo -u www-data php /var/www/html/redcap/cron.php ⚠️ ?: 数据库连接失? 症状: Can't connect to MySQL 解决: # 检查MySQL是否运行 systemctl status mysql # 测试连接 mysql -uredcap_user -p redcap ⚠️ ?: 邮件发送失? 症状: 调查邀请无法发? 原因: 未配置SMTP 解决: # 在REDCap控制中心配置SMTP # 或使用SendGrid/Amazon SES ``` --- ## 📈 部署复杂度评? ### 复杂度打分(1-5分) | 环节 | 复杂?| 时间 | 常见问题 | 难点 | |------|--------|------|----------|------| | **获取REDCap许可** | 🟡 2/5 | 1-4?| 审批?| 法务流程 | | **服务器准?* | 🟢 1/5 | 1小时 | 云厂商选择 | ?| | **LAMP环境搭建** | 🟡 2/5 | 2-4小时 | PHP版本兼容 | 依赖安装 | | **REDCap安装** | 🟡 2/5 | 1-2小时 | 数据库配?| 文件权限 | | **SMTP配置** | 🟡 3/5 | 1-3小时 | 邮件被拒 | 反垃圾邮?| | **SSL证书** | 🟢 1/5 | 30分钟 | 域名解析 | ?| | **安全加固** | 🔴 4/5 | 1-2?| 规则配置 | 防火?WAF | | **性能优化** | 🔴 4/5 | 1-2?| 慢查?| MySQL调优 | | **备份策略** | 🟡 2/5 | 2小时 | 存储空间 | 自动?| | **监控告警** | 🟡 3/5 | 4小时 | 指标选择 | 工具集成 | ### 总体评估 ``` 部署复杂度:3.5/5(中等偏高) 原因? ?优势? - REDCap安装向导友好(图形化界面? - 官方文档详细 - 社区支持活跃 ⚠️ 挑战? - LAMP环境依赖多(10+个PHP扩展? - 文件权限易出? - SMTP配置繁琐 - 安全加固需要专业知? 对比? - 比WordPress简单(依赖更少? - 比Moodle复杂(配置更多) - 比自研系统简单(现成软件? ``` --- ## 🚀 快速开始:3种部署路? ### 路径1:Docker快速体验(1小时? ```bash # 适用于:开发测试、External Module开? # 1. 克隆配置仓库(假设你已创建) git clone https://github.com/your-org/redcap-docker.git cd redcap-docker # 2. 放置REDCap源码 # 将redcap_v15.8.0.zip解压到当前目? # 3. 一键启? docker-compose up -d # 4. 访问 http://localhost:8080/install.php # 5. 完成安装向导 # 数据库配置: # Host: redcap-db # Database: redcap # Username: redcap_user # Password: redcap_pass_456 ?优势:快速、可重复、易销? ?劣势:不适合生产环境 ``` ### 路径2:云服务器标准部署(1天) ```bash # 适用于:小型团队、私有化部署客户 # 1. 购买云服务器 阿里云ECS??GB,Ubuntu 22.04 # 2. 执行自动化脚? wget https://your-domain.com/redcap-install.sh chmod +x redcap-install.sh sudo ./redcap-install.sh # 3. 访问 http://your-server-ip/install.php # 4. 完成安装 # 5. 配置域名和SSL certbot --apache -d redcap.yourdomain.com ?优势:稳定、安全、可扩展 ?劣势:需要运维知? ``` ### 路径3:托管服务(0天) ```bash # 适用于:快速上手、无运维团队 # REDCap官方认证托管服务商: 1. Vanderbilt CTSA https://redcap.vanderbilt.edu/consortium/pricing.php 价格?5K-15K/? 2. Academic Health Center REDCap Hosting https://ahcredcap.org/ 价格?3K-10K/? 3. 第三方托管(需验证合规性) Veeva Vault EDC Medidata Rave ?优势:零运维、高可用、专业支? ?劣势:费用高、定制受? ``` --- ## 🔒 生产环境安全加固清单 ### 必做项(P0? ```bash # 1. 修改默认密码 # 安装完成后立即修改: # - REDCap admin用户密码 # - MySQL root密码 # - 操作系统root密码 # 2. 启用HTTPS(强制) certbot --apache -d redcap.yourdomain.com # 在REDCap控制中心:System Configuration # Force HTTPS: Yes # 3. 配置防火? ufw enable ufw allow 22/tcp # SSH(限制IP更佳? ufw allow 80/tcp ufw allow 443/tcp ufw deny 3306/tcp # 禁止外部访问MySQL # 4. 关闭不必要的服务 systemctl disable bluetooth systemctl disable cups # 5. 定期更新 apt update && apt upgrade -y # 设置自动安全更新 apt install unattended-upgrades dpkg-reconfigure -plow unattended-upgrades ``` ### 推荐项(P1? ```bash # 6. 配置Web应用防火墙(WAF? # ModSecurity + OWASP核心规则? apt install libapache2-mod-security2 cd /etc/modsecurity wget https://github.com/coreruleset/coreruleset/archive/v3.3.4.tar.gz tar -xzvf v3.3.4.tar.gz # 7. 启用审计日志 # 在REDCap控制中心启用? # - Login auditing # - Page view logging # - Data export logging # 8. 配置备份(每日自动) cat > /etc/cron.daily/redcap-backup << 'EOF' #!/bin/bash # 数据库备? mysqldump -uredcap_user -p'PASSWORD' redcap | gzip > /backup/redcap_$(date +\%Y\%m\%d).sql.gz # 文件备份 tar -czf /backup/redcap_files_$(date +\%Y\%m\%d).tar.gz /var/www/html/redcap/edocs # 删除30天前的备? find /backup -type f -mtime +30 -delete EOF chmod +x /etc/cron.daily/redcap-backup # 9. 配置fail2ban(防暴力破解? apt install fail2ban cat > /etc/fail2ban/jail.local << 'EOF' [DEFAULT] bantime = 3600 findtime = 600 maxretry = 5 [sshd] enabled = true [apache-auth] enabled = true EOF systemctl restart fail2ban # 10. 配置监控告警 # 推荐工具? # - Uptime监控:UptimeRobot(免费) # - 日志监控:Logtail(阿里云SLS? # - APM监控:New Relic(付费) ``` --- ## 💰 成本估算(全生命周期? ### 场景1:开发测试环? ``` 初始成本? - 服务器:$0(本地电脑) - REDCap许可?0(已获得? - SSL证书?0(自签名证书? - 开发工具:$0(开源) 总计?0 ``` ### 场景2:小型生产环境(50用户? ``` 初始成本(一次性)? - REDCap许可获取?0(联盟成员) - 云服务器购买?0(按月付费) - SSL证书?0(Let's Encrypt? - 部署实施?2K?天人力) 年度运营成本? - 云服务器?600/年(阿里??GB? - 带宽流量?240/年(10Mbps? - 备份存储?120/年(100GB OSS? - SMTP服务?0(SendGrid免费额度? - 监控告警?0(UptimeRobot免费? - 运维人力?10K/年(0.2 FTE? 5年总成本:$57K ``` ### 场景3:企业级环境?00用户? ``` 初始成本? - 服务器集群:$5K(采购) - 专业服务?10K(架构设?部署? - 安全审计?5K(第三方评估? 年度运营成本? - 云服务器?12K/年(4?6GB × 2? - 数据库RDS?8K/年(高可用版? - 负载均衡?3K/? - 对象存储?1K/? - SMTP服务?1K/年(SendGrid专业版) - 监控APM?2K/年(New Relic? - 安全服务?5K/年(WAF + DDoS? - 运维人力?50K/年(1 FTE DevOps? - 年度审计?10K/年(HIPAA合规? 5年总成本:$480K ``` --- ## 🎯 对您项目的建? ### 当前阶段建议:先不急着部署REDCap ``` 理由? 1. ?您已有REDCap源代码(redcap15.8.0/? 2. ?可以研究External Module开发(无需运行环境? 3. ?可以阅读API文档、数据库Schema 4. ?等确定要对接时再部署(节省资源) 现阶段可以做? - 研究REDCap代码结构 - 设计External Module架构 - 编写config.json和PHP代码(离线) - 准备数据转换逻辑 - 设计API集成方案 ``` ### 何时部署REDCap测试环境? ``` 时机? - 需要测试External Module? - 需要验证API调用? - 需要测试数据同步时 - 准备给客户演示时 推荐方案? Docker部署?小时快速搭建) 命令? cd AIclinicalresearch/ mkdir redcap-dev cd redcap-dev # 创建docker-compose.yml docker-compose up -d # 完成? ``` ### 生产环境部署策略 ``` 方案A:客户自己部署(推荐? - 你们只提供External Module - 客户在自己的REDCap上安? - 你们不承担运维责? 优势? ?无需运维成本 ?数据在客户环境(合规? ?商业模式清晰(插件销售) 方案B:你们提供托管服? - 部署REDCap + 你们的External Module - 按月收费(SaaS模式? 劣势? ?运维成本高($50K+/年) ?许可合规风险(需与范德堡确认? ?数据合规责任(HIPAA? 建议? 🎯 优先推荐方案A(客户自己部署REDCap? ``` --- ## 📚 部署参考资? ### 官方文档 ``` 1. REDCap安装指南 /redcap15.8.0/Installation_Instructions.txt 2. REDCap技术要? https://projectredcap.org/software/requirements/ 3. REDCap社区论坛 https://community.projectredcap.org/ 4. External Module开发文? /redcap_external_module_framework_docs_main/ ``` ### 第三方教? ``` 1. GitHub REDCap Docker https://github.com/123andy/redcap-docker-compose 2. DigitalOcean REDCap部署教程 https://www.digitalocean.com/community/tutorials/how-to-install-redcap 3. YouTube视频教程 搜索?REDCap installation tutorial" ``` --- ## 🎬 总结与行动建? ### 回答您的问题 **Q1: 对接REDCap前需要部署吗?* A: ?**是的**,需要部署REDCap服务器才能开发和测试对接功能? **Q2: 部署复杂吗?** A: 🟡 **中等复杂?*?.5/5分) - Docker方案?-2小时(简单) - 生产环境?-2天(中等? - 企业级:3-5天(复杂? **Q3: 需要什么条件?** A: 1. 🔑 REDCap许可(加入联盟) 2. 💾 REDCap源代码(已有✅) 3. 🖥?服务器(2?GB起) 4. 📧 SMTP邮件服务 **Q4: 软硬件要求?** A: - CPU: 2? - 内存: 8GB+ - 硬盘: 100GB+ SSD - 软件: LAMP栈(Linux + Apache + MySQL + PHP? ### 立即行动 ``` Step 1: 决定部署方案 ├─ Docker(开发测试) ?1小时完成 └─ 手动部署(生产环境) ?1天完? Step 2: 准备环境 - 购买云服务器(如需? - 安装Docker(如需? - 确认REDCap许可状? Step 3: 执行部署 - 按照本文档步骤操? - 记录遇到的问? - 完成安装向导 Step 4: 验证 - 创建测试项目 - 录入测试数据 - 测试API调用 Step 5: 开始External Module开? - 创建模块目录 - 编写config.json - 测试Hook功能 ``` --- **文档版本**:v1.0 **最后更?*?025-12-30 **下次更新**:部署完成后补充实际遇到的问? --- **🚀 需要我帮您创建Docker部署脚本吗?或者有其他部署相关的问题?**