Major Changes: - Add StreamingService with OpenAI Compatible format - Upgrade Chat component V2 with Ant Design X integration - Implement AIA module with 12 intelligent agents - Update API routes to unified /api/v1 prefix - Update system documentation Backend (~1300 lines): - common/streaming: OpenAI Compatible adapter - modules/aia: 12 agents, conversation service, streaming integration - Update route versions (RVW, PKB to v1) Frontend (~3500 lines): - modules/aia: AgentHub + ChatWorkspace (100% prototype restoration) - shared/Chat: AIStreamChat, ThinkingBlock, useAIStream Hook - Update API endpoints to v1 Documentation: - AIA module status guide - Universal capabilities catalog - System overview updates - All module documentation sync Tested: Stream response verified, authentication working Status: AIA V2.0 core completed (85%)
20 KiB
REDCap Docker驛ィ鄂イ謫堺ス懈焔蜀<E78494>
*迚域悽<EFBFBD>? v1.0
譛蜷取峩譁ー<EFBFBD><EFBFBD> 2026-01-02
*騾ら畑邇ッ蠅<EFBFBD>シ? Windows/Linux/Mac + Docker
*REDCap迚域悽<EFBFBD>? 15.8.0
鬪瑚ッ∫憾諤<EFBFBD>シ<EFBFBD> 笨?蟾イ蝨ィ譛ャ蝨ーWindows邇ッ蠅<EFBDAF>ェ瑚ッ<E7919A>夊ソ<E5A48A>
<EFBFBD>搭 譁<>。」逶ョ譬<EFBDAE>
譛ャ謇句<EFBFBD>謠蝉セ娚EDCap蝓コ莠札ocker逧?譬<EFBFBD>㊥蛹夜Κ鄂イ豬∫ィ?<EFBFBD>碁ら畑莠趣シ<EFBFBD>
- 笨?譛ャ蝨ー蠑蜿醍識蠅?
- 笨?髦ソ驥御コ薦CS逕滉コァ邇ッ蠅<EFBDAF>
- 笨?蛹サ髯「遘∵怏蛹匁恪蜉。蝎ィ
*譬ク蠢<EFBFBD>シ伜漢<EFBFBD>?
- <EFBFBD>売 **蜿ッ螟咲<E89E9F>?*<2A>咼ocker驟咲スョ譁<EFBDAE>サカ蜿ッ蝨ィ荳榊酔邇ッ蠅<EFBDAF>峩謗・菴ソ逕ィ
- <EFBFBD>逃 **荳閾エ諤?*<2A>壼シ蜿醍識蠅?逕滉コァ邇ッ蠅<EFBDAF>シ碁∩蜈咲識蠅<E8AD98>キョ蠑?
- <EFBFBD>噫 **蠢ォ騾滄Κ鄂?*<2A>?0蛻<30>帖蜀<E5B896>ョ梧<EFBDAE>驛ィ鄂?
- <EFBFBD>孱<EFBFBD>?髣ョ鬚倩ァ<EFBFBD>∩<EFBFBD>壼渕莠主ョ樣刔雕ゥ蝮醍サ城ェ鯉シ碁「<EFBFBD>亟蟶ク隗<EFBFBD>琉鬚<EFBFBD>
<EFBFBD>識 驛ィ鄂イ譫カ譫<EFBDB6>
譬<EFBFBD>㊥譫カ譫<EFBFBD>シ?荳ェDocker螳ケ蝎ィ<E89D8E>?
笏娯楳笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏?
笏? REDCap Docker 驛ィ鄂イ譫カ譫<EFBDB6> 笏?
笏懌楳笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏?
笏? 笏?
笏? 笏娯楳笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏? 笏?
笏? 笏? redcap-apache (Web螳ケ蝎ィ) 笏? 笏?
笏? 笏? - PHP 8.1 + Apache 2.4 笏? 笏?
笏? 笏? - REDCap 15.8.0 貅千<E8B285><E58D83> 笏? 笏?
笏? 笏? - Cron螳壽慮莉サ蜉。 笏? 笏?
笏? 笏? Port: 8080 竊?80 笏? 笏?
笏? 笏披楳笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏? 笏?
笏? 竊? 笏?
笏? 笏娯楳笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏? 笏?
笏? 笏? redcap-mysql (謨ー謐ョ蠎灘ョケ蝎? 笏? 笏?
笏? 笏? - MySQL 8.0 笏? 笏?
笏? 笏? - 謨ー謐ョ謖∽ケ<E288BD><EFBDB9>?Volume) 笏? 笏?
笏? 笏? Port: 3306 (蜀<>Κ) 笏? 笏?
笏? 笏披楳笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏? 笏?
笏? 竊? 笏?
笏? 笏娯楳笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏? 笏?
笏? 笏? redcap-phpmyadmin (邂。逅<EFBDA1>キ・蜈キ) 笏? 笏?
笏? 笏? - phpMyAdmin 5 笏? 笏?
笏? 笏? Port: 8081 竊?80 笏? 笏?
笏? 笏? (蜿ッ騾会シ御サ<E5BEA1>シ蜿醍識蠅? 笏? 笏?
笏? 笏披楳笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏? 笏?
笏披楳笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏笏?
<EFBFBD>逃 蜿ッ螟咲畑逧Дocker譁<72>サカ貂<EFBDB6>黒
譬ク蠢<EFBFBD>枚莉カ<EFBFBD>亥ソ<EFBFBD>怙<EFBFBD>悟庄逶エ謗・螟咲畑<EFBFBD>?
| 譁<EFBFBD>サカ霍ッ蠕<EFBFBD> | 隸エ譏<EFBFBD> | 邇ッ蠅<EFBFBD>キョ蠑<EFBFBD> | 螟咲畑諤? |
|---|---|---|---|
Dockerfile.redcap |
REDCap髟懷ワ譫<EFBFBD>サコ譁<EFBFBD>サカ | 譌<EFBFBD>蟾ョ蠑? | 笨?100%蜿ッ螟咲<E89E9F>? |
docker-compose.yml |
蠑蜿醍識蠅<EFBFBD>シ匁賜譁<EFBFBD>サ? | 髴隹<EFBFBD>紛遶ッ蜿」/蜊キ霍ッ蠕? | 笞<EFBFBD><EFBFBD><EFBFBD> 髴蠕ョ隹<EFBDAE> |
docker-compose.prod.yml |
逕滉コァ邇ッ蠅<EFBFBD>シ匁賜譁<EFBFBD>サカ | 髴驟咲スョRDS | 笞<EFBFBD><EFBFBD><EFBFBD> 髴菫ョ謾ケ謨ー謐ョ蠎馴<E8A08E>鄂? |
docker-entrypoint.sh |
螳ケ蝎ィ蜷ッ蜉ィ閼壽悽 | 譌<EFBFBD>蟾ョ蠑? | 笨?100%蜿ッ螟咲<E89E9F>? |
config/apache/redcap.conf |
Apache陌壽供荳サ譛コ驟咲スョ | 髴隹<EFBFBD>紛蝓溷錐 | 笞<EFBFBD><EFBFBD><EFBFBD> 髴菫ョ謾ケ蝓溷錐 |
config/php/php.ini |
PHP霑占。梧慮驟咲ス? | 譌<EFBFBD>蟾ョ蠑? | 笨?100%蜿ッ螟咲<E89E9F>? |
config/database.php |
REDCap謨ー謐ョ蠎楢ソ樊磁驟咲ス? | 蠢<EFBFBD>。サ菫ョ謾ケ | 笶?髴髓亥ッケ邇ッ蠅<EFBDAF>ョ壼宛 |
.gitattributes |
Git謐「陦檎ャヲ隗<EFBFBD><EFBFBD>? | 譌<EFBFBD>蟾ョ蠑? | 笨?100%蜿ッ螟咲<E89E9F>? |
霎<EFBFBD>勧閼壽悽<EFBFBD>亥庄騾会シ<EFBFBD>
| 譁<EFBFBD>サカ霍ッ蠕<EFBFBD> | 隸エ譏<EFBFBD> | 騾ら畑蝨コ譎ッ |
|---|---|---|
scripts/setup-redcap.ps1 |
荳髞ョ驛ィ鄂イ閼壽悽<EFBFBD><EFBFBD>indows<EFBFBD>? | 譛ャ蝨ー蠑蜿? |
scripts/start-redcap.ps1 |
蜷ッ蜉ィ譛榊苅 | 譛ャ蝨ー蠑蜿? |
scripts/stop-redcap.ps1 |
蛛懈ュ「譛榊苅 | 譛ャ蝨ー蠑蜿? |
scripts/clean-redcap.ps1 |
貂<EFBFBD>炊邇ッ蠅<EFBFBD> | 譛ャ蝨ー蠑蜿? |
scripts/create-redcap-password.php |
蟇<EFBFBD><EFBFBD><EFBFBD>㍾鄂ョ蟾・蜈キ | 蠑蜿?霑千サエ |
<EFBFBD>噫 驛ィ鄂イ豬∫ィ具シ井サ<E4BA95>0蛻?<3F>?
髦カ谿オ1<EFBFBD>夂識蠅<EFBFBD>㊥螟?
1.1 螳芽」<E88ABD>ocker
*Windows/Mac<61>?
# 荳玖スス蟷カ螳芽」<E88ABD>ocker Desktop
# https://www.docker.com/products/docker-desktop/
# 鬪瑚ッ∝ョ芽」<E88ABD>
docker --version
docker-compose --version
Linux<EFBFBD><EFBFBD>entOS/Ubuntu<74>会シ<E4BC9A>
# CentOS 7/8
sudo yum install -y docker docker-compose
# Ubuntu 20.04/22.04
sudo apt update
sudo apt install -y docker.io docker-compose
# 蜷ッ蜉ィDocker
sudo systemctl start docker
sudo systemctl enable docker
# 鬪瑚ッ∝ョ芽」<E88ABD>
docker --version
docker-compose --version
1.2 闔キ蜿乏EDCap貅千<E8B285><E58D83>
*驥崎ヲ∬ッエ譏趣シ? REDCap譏ッ蝠<EFBDAF>ク夊スッ莉カ<E88E89>碁怙隕<E68099>シ<EFBFBD>
- 隶ソ髣ョ https://projectredcap.org/
- 豕ィ蜀悟ケカ逕ウ隸キ遉セ蛹コ迚域<EFBFBD>蝠<EFBFBD>ク夂沿
- 荳玖ススREDCap 15.8.0貅千<EFBFBD>∝桁<EFBFBD><EFBFBD>edcap15.8.0.zip<69>?
*逶ョ蠖慕サ捺桷<EFBFBD>?
your-project/
笏懌楳笏 redcap-docker-dev/ # Docker驟咲スョ逶ョ蠖<EFBDAE>
笏? 笏懌楳笏 Dockerfile.redcap
笏? 笏懌楳笏 docker-compose.yml
笏? 笏懌楳笏 docker-entrypoint.sh
笏? 笏懌楳笏 config/
笏? 笏披楳笏 scripts/
笏?
笏披楳笏 redcap15.8.0/ # REDCap貅千<E8B285><E58D83>シ郁ァ」蜴句錘<E58FA5>?
笏懌楳笏 redcap_v15.8.0/
笏懌楳笏 install.php
笏懌楳笏 index.php
笏披楳笏 ...
髦カ谿オ2<EFBFBD>夐<EFBFBD>鄂ョDocker譁<EFBFBD>サカ
2.1 蛻帛サコ鬘ケ逶ョ逶ョ蠖<EFBDAE>
# 蛻帛サコ逶ョ蠖慕サ捺桷
mkdir -p redcap-docker-dev/config/{apache,php}
mkdir -p redcap-docker-dev/scripts
mkdir -p redcap-docker-dev/data/mysql # MySQL謨ー謐ョ謖∽ケ<E288BD><EFBDB9>?
mkdir -p redcap-docker-dev/logs # 譌・蠢礼岼蠖<E5B2BC>
2.2 螟榊宛Docker驟咲スョ譁<EFBDAE>サカ
莉取<EFBFBD>莉ャ逧<EFBFBD>。ケ逶ョ荳ュ螟榊宛莉・荳区枚莉カ<EFBFBD><EFBFBD>
# 譬ク蠢<EFBDB8>枚莉カ<E88E89>亥庄逶エ謗・螟咲畑<E592B2>梧裏髴菫ョ謾ケ<E8ACBE>?
cp AIclinicalresearch/redcap-docker-dev/Dockerfile.redcap ./
cp AIclinicalresearch/redcap-docker-dev/docker-entrypoint.sh ./
cp AIclinicalresearch/redcap-docker-dev/config/php/php.ini ./config/php/
cp AIclinicalresearch/redcap-docker-dev/.gitattributes ./
# 髴隕∽ソョ謾ケ逧<EFBDB9>枚莉カ
cp AIclinicalresearch/redcap-docker-dev/docker-compose.yml ./
cp AIclinicalresearch/redcap-docker-dev/config/apache/redcap.conf ./config/apache/
cp AIclinicalresearch/redcap-docker-dev/config/database.php ./config/
2.3 驟咲スョ邇ッ蠅<EFBDAF>序驥擾シ亥庄騾会シ<E4BC9A>
蛻帛サコ.env譁<EFBFBD>サカ<EFBFBD>亥盾閠チenv.template`<60>会シ<E4BC9A>
# MySQL驟咲スョ
MYSQL_ROOT_PASSWORD=your_strong_root_password_here
MYSQL_DATABASE=redcap
MYSQL_USER=redcap_user
MYSQL_PASSWORD=your_strong_password_here
# REDCap驟咲スョ
REDCAP_VERSION=15.8.0
REDCAP_BASE_URL=http://localhost:8080
# 遶ッ蜿」驟咲スョ<EFBDBD>磯∩蜈榊<E89C88>遯<EFBFBD>シ<EFBFBD>
REDCAP_WEB_PORT=8080
MYSQL_PORT=3306
PHPMYADMIN_PORT=8081
2.4 菫ョ謾ケdatabase.php<68>磯㍾隕<E38DBE>シ<EFBFBD>シ?
郛冶セ疏config/database.php`<60>梧<EFBFBD>ケ謐ョ邇ッ蠅<EFBDAF>ソョ謾ケ<E8ACBE><EFBDB9>
蠑蜿醍識蠅<EFBFBD>シ<EFBFBD>ocker MySQL<51>会シ<E4BC9A>
$hostname = 'redcap-mysql'; // Docker Compose譛榊苅蜷?
$db = 'redcap';
$username = 'redcap_user';
$password = 'your_password'; // 荳?env菫晄戟荳閾?
$salt = 'dev_salt_2026'; // 蠑蜿醍識蠅<E8AD98>崋螳嘖alt
逕滉コァ邇ッ蠅<EFBFBD>シ磯仭驥御コ然DS<EFBFBD>会シ<EFBFBD>
$hostname = 'rm-xxx.mysql.rds.aliyuncs.com'; // RDS蜀<53>ス大慍蝮
$db = 'redcap_prod';
$username = 'redcap_admin';
$password = 'your_strong_prod_password'; // 蠑コ蟇<EFBDBA><E89F87><EFBFBD>シ<EFBFBD>
$salt = 'your_random_32_chars_salt'; // 笞<><E7AC9E><EFBFBD> 豌ク荳榊庄蜿假シ?
*笞<EFBFBD><EFBFBD><EFBFBD> 蜈ウ髞ョ豕ィ諢丈コ矩。ケ<EFBDA1>?
- 笨?**蛻<>髯、譁<EFBDA4>サカ譛ォ蟆セ逧Я?>`蜥檎ゥコ陦?*<2A>磯亟豁「CRLF豎。譟難シ?
- 笨?**Salt蛟シ荳譌ヲ隶セ鄂ョ豌ク荳榊庄謾?*<2A>亥スア蜩肴焚謐ョ蜴サ譬<EFBDBB>ッ<EFBFBD>喧<EFBFBD><E596A7>
- 笨?**逕滉コァ邇ッ蠅<EFBDAF>スソ逕ィ蠑コ蟇<EFBDBA><E89F87>?*<2A>?2+蟄礼ャヲ<EFBDAC>?
髦カ谿オ3<EFBFBD>夐Κ鄂イREDCap
3.1 譽譟・REDCap貅千<E8B285>∽ス咲スョ
遑ョ菫拜docker-compose.yml`荳ュ逧<EFBDAD>差謖りスス霍ッ蠕<EFBDAF>ュ」遑ョ<E98191><EFBDAE>
services:
redcap-web:
volumes:
# 蟆<>EDCap貅千<E8B285>∵撃霓ス蛻ー螳ケ蝎?
- ../redcap15.8.0:/var/www/html/redcap:ro # 蜿ェ隸サ謖りスス
# 蟆<>atabase.php螟榊宛蛻ー螳ケ蝎ィ<E89D8E>郁ッサ蜀呻シ?
- ./config/database.php:/var/www/html/redcap/database.php
*霍ッ蠕<EFBFBD>ッエ譏趣シ?
../redcap15.8.0<EFBFBD>夂嶌蟇ケ莠餐redcap-docker-dev`逶ョ蠖<EFBDAE>- 螯よ棡貅千<EFBFBD>∝惠蜈カ莉紋ス咲スョ<EFBFBD>御ソョ謾ケ荳コ扈晏ッケ霍ッ蠕<EFBFBD>シ啻D:/path/to/redcap15.8.0`
3.2 譫<>サコ蟷カ蜷ッ蜉ィ螳ケ蝎?
# 霑帛<E99C91>Docker驟咲スョ逶ョ蠖<EFBDAE>
cd redcap-docker-dev
# 譫<>サコREDCap髟懷ワ<E687B7>磯ヲ匁ャ。驛ィ鄂イ髴隕<C280>シ檎コ?-10蛻<30>帖<EFBFBD>?
docker-compose build
# 蜷ッ蜉ィ謇譛画恪蜉?
docker-compose up -d
# 譟・逵句ョケ蝎ィ迥カ諤?
docker-compose ps
# 譟・逵区律蠢暦シ域賜譟・髣ョ鬚假シ<E58187>
docker-compose logs -f redcap-web
*鬚<EFBFBD>悄霎灘<EFBFBD><EFBFBD>?
NAME IMAGE STATUS PORTS
redcap-apache redcap-custom:15.8.0 Up 10 seconds 0.0.0.0:8080->80/tcp
redcap-mysql mysql:8.0 Up 10 seconds 3306/tcp
redcap-phpmyadmin phpmyadmin/phpmyadmin Up 10 seconds 0.0.0.0:8081->80/tcp
3.3 蛻晏ァ句喧謨ー謐ョ蠎<EFBDAE>
譁ケ豕<EFBFBD>1<EFBFBD>夐夊ソ⑲EDCap螳芽」<EFBFBD>髄蟇シ<EFBFBD>域耳闕撰シ<EFBFBD>
- 隶ソ髣ョ
http://localhost:8080/install.php - 謖臥<EFBFBD>蜷大ッシ螳梧<EFBFBD>螳芽」<EFBFBD>
- 蛻帛サコ邂。逅<EFBFBD>遭雍ヲ謌?
譁ケ豕<EFBFBD>2<EFBFBD>壼ッシ蜈・SQL譁<EFBFBD>サカ
# 螯よ棡譛臥鴫謌千噪redcap_install.sql
docker exec -i redcap-mysql mysql -uredcap_user -p'your_password' redcap < redcap_install.sql
# 驥咲スョ邂。逅<EFBDA1>遭蟇<E981AD><E89F87>?
docker cp scripts/create-redcap-password.php redcap-apache:/tmp/
docker exec redcap-apache php /tmp/create-redcap-password.php
髦カ谿オ4<EFBFBD>夐ェ瑚ッ<EFBFBD>Κ鄂?
4.1 隶ソ髣ョREDCap
*荳サ鬘オ<EFBFBD>? http://localhost:8080/
*鬚<EFBFBD>悄扈捺棡<EFBFBD>?
- 笨?鬘オ髱「豁」蟶ク譏セ遉コ<E98189>梧怏REDCap Logo
- 笨?CSS/JS蜉<53>霓ス豁」蟶ク<E89FB6>梧裏404髞呵ッッ
- 笨?逋サ蠖墓。<E5A293>庄隗?
*螯よ棡鬘オ髱「譬キ蠑城漠荵ア<EFBFBD>? 蜿りァ∽ク区婿"髣ョ鬚俶賜譟・"遶<>闃<EFBFBD>
4.2 豬玖ッ慕匳蠖<E58CB3>
*鮟倩ョ、雍ヲ謌キ<EFBFBD>?
- Username:
Admin - Password:
Admin123!<EFBFBD>域<EFBFBD>菴<EFBFBD>隶セ鄂ョ逧<EFBFBD>ッ<EFBFBD><EFBFBD><EFBFBD>シ?
*鬚<EFBFBD>悄扈捺棡<EFBFBD>?
- 笨?逋サ蠖墓<E8A096>蜉滂シ瑚キウ霓ャ蛻ー荳サ鬘オ
- 笨?蜿ッ莉・逵句芦"Control Center"縲?My Projects"遲芽除蜊?
4.3 隶ソ髣ョphpMyAdmin
*蝨ー蝮<EFBFBD>? http://localhost:8081/
*逋サ蠖穂ソ。諱ッ<EFBFBD>?
- 譛榊苅蝎ィ<EFBFBD>啻redcap-mysql`
- 逕ィ謌キ蜷搾シ啻redcap_user`
- 蟇<EFBFBD><EFBFBD><EFBFBD>シ夲シ井ク仕atabase.php荳ュ逧<EFBDAD>ッ<EFBFBD><EFBDAF>∽ク閾エ<E996BE><EFBDB4>
鬪瑚ッ∵焚謐ョ蠎難シ<EFBFBD>
- 笨?蜿ッ莉・逵句芦
redcap謨ー謐ョ蠎? - 笨?譛?00+蠑<>陦ィ<E999A6>亥ヲAredcap_config
,redcap_user_information`遲会シ<E4BC9A>
笞<EFBFBD><EFBFBD><EFBFBD> 蟶ク隗<EFBDB8>琉鬚倅ク手ァ」蜀ウ譁ケ譯?
髣ョ鬚<EFBFBD>1<EFBFBD>哘RR_CONTENT_DECODING_FAILED
*邇ー雎。<EFBFBD>?
- 豬剰ァ亥勣隶ソ髣ョREDCap譌カ謚・髞呻シ啻net::ERR_CONTENT_DECODING_FAILED 200 (OK)`
- CSS/JS譁<53>サカ蜉<EFBDB6>霓ス螟ア雍・
*譬ケ譛ャ蜴溷屏<EFBFBD>?
Apache逧Яmod_deflate讓。蝮嶺ク傘HP逧Яzlib.output_compression蜀イ遯<EFBFBD>シ悟ッシ閾エ謨ー謐ョ陲ォ驥榊、榊視郛ゥ縲?
*隗」蜀ウ譁ケ譯茨シ?
笨?*謌台サャ逧Дocker驟咲スョ蟾イ閾ェ蜉ィ菫ョ螟肴ュ、髣ョ鬚假シ?
-
docker-entrypoint.sh閾ェ蜉ィ遖∫畑deflate讓。蝮暦シ?a2dismod -f deflate -
php.ini荳ュ蟾イ蜈ウ髣ュ蜴狗シゥ<EFBFBD>?zlib.output_compression = Off output_buffering = Off -
redcap.conf荳ュ豕ィ驥頑脂莠<EFBFBD>mod_deflate`驟咲スョ
*螯よ棡霑俶怏髣ョ鬚假シ?
# 霑帛<E99C91>螳ケ蝎ィ譽譟?
docker exec redcap-apache bash -c "apache2ctl -M | grep deflate"
# 蠎碑ッ・豐。譛芽セ灘<EFBDBE>
# 驥榊星螳ケ蝎ィ
docker-compose restart redcap-web
髣ョ鬚<EFBFBD>2<EFBFBD>夂匳蠖募、ア雍?- 譌<>豕募刈霓ス蜩榊コ疲焚謐ョ
*邇ー雎。<EFBFBD>?
- 霎灘<EFBFBD>逕ィ謌キ蜷榊ッ<EFBFBD><EFBFBD>∝錘<EFBFBD>碁。オ髱「荳崎キウ霓ャ
- Network髱「譚ソ譏セ遉コPOST隸キ豎りソ泌屓200<EFBFBD>御ス<EFBFBD>"譌<>豕募刈霓ス蜩榊コ疲焚謐ョ"
*譬ケ譛ャ蜴溷屏<EFBFBD>?
database.php譁<EFBFBD>サカ譛ォ蟆セ譛荏?>`PHP扈捺據譬<E6939A>ュセ蜥檎ゥコ陦鯉シ悟ッシ閾エCRLF謐「陦檎ャヲ豎。譟滴TTP蜩榊コ斐?
*隗」蜀ウ譁ケ譯茨シ?
笨?*謌台サャ謠蝉セ帷噪database.php讓。譚ソ蟾イ菫ョ螟肴ュ、髣ョ鬚假シ?
- 笨?譁<>サカ譛ォ蟆セ豐。譛荏?>`
- 笨?譁<>サカ譛ォ蟆セ豐。譛臥ゥコ陦<EFBFBD>
- 笨?
.gitattributes蠑コ蛻カPHP譁<EFBFBD>サカ菴ソ逕ィLF謐「陦檎ャ?
*螯よ棡閾ェ蟾ア蛻帛サコdatabase.php<68>?
<?php
// 謨ー謐ョ蠎馴<E8A08E>鄂?..
$hostname = 'redcap-mysql';
$db = 'redcap';
// ...
// 笶?髞呵ッッ蜀呎ウ包シ?
?>
// 笨?豁」遑ョ蜀呎ウ包シ壽枚莉カ譛ォ蟆セ蜿ェ譛画ウィ驥顔噪扈捺據隨ヲ<E99AA8>梧イ。譛<EFBDA1>?>
*鬪瑚ッ∵婿豕包シ?
# 譽譟・譁<EFBDA5>サカ譛ォ蟆セ<E89F86>亥香蜈ュ霑帛宛<E5B89B>?
docker exec redcap-apache bash -c "tail -c 50 /var/www/html/redcap/database.php | xxd"
# 蠎碑ッ・逵句芦<E58FA5>?
# 00000030: 2a2f 0a # */ 蜥梧困陦檎ャヲ<EFBDAC>梧イ。譛??> 蜥悟、壻ス咏噪0d0a
髣ョ鬚<EFBFBD>3<EFBFBD>咤ase URL驟咲スョ髞呵ッッ
*邇ー雎。<EFBFBD>?
- CSS/JS譁<53>サカ霍ッ蠕<EFBDAF>漠隸ッ<E99AB8>御セ句ヲゑシ啻http://localhost:8080/redcap/redcap_v15.8.0/Resources/...`
- 螳樣刔霍ッ蠕<EFBFBD>コ碑ッ・譏ッ<EFBFBD>啻http://localhost:8080/redcap_v15.8.0/Resources/...`
*譬ケ譛ャ蜴溷屏<EFBFBD>?
REDCap謨ー謐ョ蠎謎クュ逧Яredcap_base_url驟咲スョ荳拶pache逧ЯDocumentRoot荳榊源驟阪?
*隗」蜀ウ譁ケ譯茨シ?
-- 霑樊磁蛻ーMySQL螳ケ蝎ィ
docker exec -it redcap-mysql mysql -uredcap_user -p'your_password' redcap
-- 譟・逵句ス灘燕驟咲スョ
SELECT field_name, value FROM redcap_config WHERE field_name = 'redcap_base_url';
-- 菫ョ豁」荳コ豁」遑ョ逧Вase URL
UPDATE redcap_config
SET value = 'http://localhost:8080'
WHERE field_name = 'redcap_base_url';
-- 逕滉コァ邇ッ蠅<EFBDAF>隼荳コ螳樣刔蝓溷錐
-- UPDATE redcap_config
-- SET value = 'https://redcap.yourdomain.com'
-- WHERE field_name = 'redcap_base_url';
*鬚<EFBFBD>亟謗ェ譁ス<EFBFBD>?
- 螳芽」<EFBFBD>慮遑ョ菫截ase URL荳手ョソ髣ョ蝨ー蝮荳閾?
- 菫ョ謾ケ蜷朱㍾蜷ッ豬剰ァ亥勣謌匁ク<EFBFBD>勁郛灘ュ?
髣ョ鬚<EFBFBD>4<EFBFBD>壼ョケ蝎ィ蜷ッ蜉ィ螟ア雍?
蟶ク隗∝次蝗<EFBFBD>荳手ァ」蜀ウ譁ケ譯茨シ<EFBFBD>
*4.1 遶ッ蜿」陲ォ蜊<EFBDAB>逕?
# 譽譟・遶ッ蜿」蜊<EFBDA3>逕?
netstat -ano | findstr ":8080" # Windows
lsof -i :8080 # Linux/Mac
# 隗」蜀ウ譁ケ譯<EFBDB9>1<EFBFBD>壻ソョ謾ケdocker-compose.yml遶ッ蜿」譏<EFBDA3>蟆<EFBFBD>
ports:
- "8090:80" # 謾ケ荳コ8090謌門<E8AC8C>莉也ォッ蜿?
# 隗」蜀ウ譁ケ譯<EFBDB9>2<EFBFBD>壼●豁「蜊<EFBDA2>逕ィ遶ッ蜿」逧<EFBDA3>ィ句コ<E58FA5>
*4.2 蜊キ謖りスス霍ッ蠕<EFBDAF>漠隸?
# 譽譟・REDCap貅千<E8B285>∬キッ蠕<EFBDAF>弍蜷ヲ蟄伜惠
ls -la ../redcap15.8.0
# 螯よ棡霍ッ蠕<EFBDAF>漠隸ッ<E99AB8>御ソョ謾ケdocker-compose.yml
volumes:
- /absolute/path/to/redcap15.8.0:/var/www/html/redcap:ro
*4.3 譚<>剞髣ョ鬚假シ<E58187>inux<75>?
# 扈吩コ<E590A9>ocker逶ョ蠖暮ょス捺揀髯<E68F80>
sudo chown -R $(whoami):$(whoami) redcap-docker-dev/
chmod +x docker-entrypoint.sh
髣ョ鬚<EFBFBD>5<EFBFBD>哺ySQL霑樊磁螟ア雍・
*邇ー雎。<EFBFBD>?
- REDCap譏セ遉コ"Database connection failed"
- 譌・蠢嶺クュ譛窺ySQL霑樊磁髞呵ッッ
*謗呈衍豁・鬪、<EFBFBD>?
# 1. 譽譟・MySQL螳ケ蝎ィ迥カ諤?
docker-compose ps redcap-mysql
# 2. 譟・逵貴ySQL譌・蠢<EFBDA5>
docker-compose logs redcap-mysql
# 3. 謇句勘豬玖ッ戊ソ樊磁
docker exec -it redcap-mysql mysql -uredcap_user -p'your_password'
# 4. 譽譟・database.php荳ュ逧<EFBDAD><E980A7>鄂ョ
docker exec redcap-apache cat /var/www/html/redcap/database.php | grep hostname
*蟶ク隗<EFBFBD>漠隸ッ<EFBFBD>?
$hostname蜀呎<EFBFBD>莠<EFBFBD>localhost<EFBFBD>亥コ碑ッ・譏ッredcap-mysql`<60>?- 蟇<EFBFBD><EFBFBD>∽ク榊源驟搾シ井ク餐.env
謌冒docker-compose.yml荳堺ク閾エ<EFBFBD><EFBFBD> - MySQL螳ケ蝎ィ譛ェ螳悟<EFBFBD>蜷ッ蜉ィ<EFBFBD>育ュ牙セ<EFBFBD>30遘貞<EFBFBD>隸包シ<EFBFBD>
<EFBFBD>売 荳榊酔邇ッ蠅<EFBDAF>噪驟咲スョ蟾ョ蠑?
譛ャ蝨ー蠑蜿醍識蠅?
*迚ケ轤ケ<EFBFBD>?
- 菴ソ逕ィDocker MySQL螳ケ蝎ィ
- 蛹<EFBFBD>性phpMyAdmin
- 遶ッ蜿」譏<EFBFBD>蟆<EFBFBD>芦localhost
- 蠑蜿題ー<EFBFBD>ッ墓ィ。蠑?
*髴隕∽ソョ謾ケ逧<EFBFBD><EFBFBD>鄂ョ<EFBFBD>?
docker-compose.yml<EFBFBD>壻スソ逕ィ鮟倩ョ、驟咲ス?database.php<EFBFBD>啻$hostname = 'redcap-mysql'`
髦ソ驥御コ薦CS逕滉コァ邇ッ蠅<EFBFBD>
*迚ケ轤ケ<EFBFBD>?
- 菴ソ逕ィ髦ソ驥御コ然DS MySQL
- 荳榊桁蜷ォphpMyAdmin<EFBFBD>亥ョ牙<EFBFBD>閠<EFBFBD>剔<EFBFBD>?
- 菴ソ逕ィ蝓溷錐+SSL隸∽ケヲ
- 逕滉コァ莨伜喧驟咲スョ
*髴隕∽ソョ謾ケ逧<EFBFBD><EFBFBD>鄂ョ<EFBFBD>?
-
*菴ソ逕ィ
docker-compose.prod.yml<EFBFBD>?services: redcap-web: environment: REDCAP_BASE_URL: https://redcap.yourdomain.com # 遘サ髯、redcap-mysql蜥罫edcap-phpmyadmin譛榊苅 -
*菫ョ謾ケ
database.php<EFBFBD>?$hostname = 'rm-xxx.mysql.rds.aliyuncs.com'; // RDS蜀<53>ス大慍蝮 $db = 'redcap_prod'; $username = 'redcap_admin'; $password = 'your_strong_password_32_chars_min'; // 蠑コ蟇<EFBDBA><E89F87>? $salt = 'your_random_salt_never_change'; // 豌ク荳榊庄蜿<E5BA84> // 蜷ッ逕ィSSL霑樊磁<E6A88A>亥庄騾我ス<E68891>耳闕撰シ? $db_ssl_ca = '/path/to/rds-ca.pem'; $db_ssl_verify_server_cert = true; -
*菫ョ謾ケ
redcap.conf<EFBFBD>?ServerName redcap.yourdomain.com -
*譫<EFBFBD>サコ蟷カ謗ィ騾<EFBFBD>復蜒丞芦ACR<EFBFBD>?
# 逋サ蠖暮仭驥御コ大ョケ蝎ィ髟懷ワ譛榊<E8AD9B>? docker login --username=your_username registry.cn-hangzhou.aliyuncs.com # 譫<>サコ髟懷ワ docker build -f Dockerfile.redcap -t redcap-custom:15.8.0 . # 謇捺<E8AC87><E68DBA>ュ? docker tag redcap-custom:15.8.0 registry.cn-hangzhou.aliyuncs.com/your-namespace/redcap:15.8.0 # 謗ィ騾? docker push registry.cn-hangzhou.aliyuncs.com/your-namespace/redcap:15.8.0 -
蝨ィECS荳企Κ鄂イ<EFBFBD><EFBFBD>
# 諡牙叙髟懷ワ docker pull registry.cn-hangzhou.aliyuncs.com/your-namespace/redcap:15.8.0 # 蜷ッ蜉ィ螳ケ蝎ィ docker-compose -f docker-compose.prod.yml up -d
蛹サ髯「遘∵怏蛹夜Κ鄂?
*迚ケ轤ケ<EFBFBD>?
- 蜀<EFBFBD>ス醍識蠅<EFBFBD>シ梧裏螟也ス題ョソ髣ョ
- 蜿ッ閭ス譌<EFBFBD>豕穂スソ逕ィDocker Hub
- 髴隕∵焚謐ョ螳牙<EFBFBD>荳主粋隗<EFBFBD>
- 蜿ッ閭ス髴隕<EFBFBD>寔謌仙現髯「HIS邉サ扈<EFBFBD>
*驛ィ鄂イ豁・鬪、<EFBFBD>?
-
*遖サ郤ソ蜃<EFBFBD>、⑤ocker髟懷ワ<EFBFBD>?
# 蝨ィ譛臥ス醍サ懃噪邇ッ蠅<EFBDAF>ッシ蜃コ髟懷<E9AB9F>? docker save redcap-custom:15.8.0 mysql:8.0 phpmyadmin/phpmyadmin:latest > redcap-images.tar # 莨<>霎灘芦蛹サ髯「譛榊苅蝎ィ scp redcap-images.tar user@hospital-server:/tmp/ # 蝨ィ蛹サ髯「譛榊苅蝎ィ蟇シ蜈・ docker load < /tmp/redcap-images.tar -
驟咲スョ蜀<EFBFBD>ス第焚謐ョ蠎難シ<EFBFBD>
- 菴ソ逕ィ蛹サ髯「閾ェ蟾ア逧МySQL譛榊苅蝎?
- 謌夜Κ鄂イ迢ャ遶狗噪MySQL螳ケ蝎ィ<EFBFBD>域焚謐ョ逶ョ蠖墓撃霓ス蛻ー蛹サ髯「蟄伜お<EFBFBD>?
-
*謨ー謐ョ螳牙<EFBFBD>驟咲スョ<EFBFBD>?
- 蜷ッ逕ィ謨ー謐ョ蠎鉄SL霑樊磁
- 驟咲スョ螳壽悄螟<EFBFBD>サス
- 譌・蠢怜ョ。隶。
- 隨ヲ蜷医頑焚謐ョ螳牙<EFBFBD>豕輔句柱蛹サ逍苓。御ク夊ァ<EFBFBD>激
<EFBFBD>搭 驛ィ鄂イ譽譟・貂<EFBDA5><E8B282>?
驛ィ鄂イ蜑肴」譟?
- Docker蟾イ螳芽」<EFBFBD>ケカ霑占。鯉シ<EFBFBD>docker --version`<60>?
- Docker Compose蟾イ螳芽」<E88ABD>シ<EFBFBD>docker-compose --version`<60>?
- REDCap貅千<EFBFBD>∝キイ荳玖スス蟷カ隗」蜴<EFBFBD>
- 蟾イ螟榊宛謇譛吋ocker驟咲スョ譁<EFBFBD>サカ
database.php蟾イ譬ケ謐ョ邇ッ蠅<EFBFBD>ソョ謾?database.php譛ォ蟆セ**豐。譛荏?>`蜥檎ゥコ陦?*.env譁<EFBFBD>サカ蟾イ蛻帛サコ<EFBFBD>亥ヲゆスソ逕ィ<EFBFBD><EFBFBD>- 遶ッ蜿」譌<EFBFBD>蜀イ遯<EFBFBD>シ<EFBFBD>8080, 3306, 8081<38>?
驛ィ鄂イ蜷朱ェ瑚ッ?
- 螳ケ蝎ィ蜈ィ驛ィ蜷ッ蜉ィ<EFBFBD><EFBFBD>docker-compose ps`<60>?
- 蜿ッ莉・隶ソ髣ョREDCap鬥夜。オ<EFBFBD><EFBFBD>ttp://localhost:8080/<2F>?
- 鬘オ髱「譬キ蠑乗ュ」蟶ク<EFBFBD>梧裏404髞呵ッッ
- 蜿ッ莉・謌仙粥逋サ蠖<EFBFBD>
- phpMyAdmin蜿ッ隶ソ髣ョ<EFBFBD><EFBFBD>ttp://localhost:8081/<2F>?
- 謨ー謐ョ蠎楢。ィ蟾イ蛻帛サコ<EFBFBD><EFBFBD>100+蠑<>陦ィ<E999A6>?
- 蜿ッ莉・蛻帛サコ鬘ケ逶ョ
- 蜿ッ莉・蛻帛サコ陦ィ蜊<EFBFBD>
- 謨ー謐ョ蜿ッ莉・豁」蟶ク菫晏ュ<EFBFBD>
逕滉コァ邇ッ蠅<EFBFBD>「晏、匁」譟?
- 菴ソ逕ィ蠑コ蟇<EFBFBD><EFBFBD><EFBFBD>シ<EFBFBD>32+蟄礼ャヲ<EFBDAC>?
- Salt蛟シ蟾イ隶セ鄂ョ荳泌、<EFBFBD>サ?
- 菴ソ逕ィHTTPS + SSL隸∽ケヲ
- 髦イ轣ォ蠅呵ァ<EFBFBD><EFBFBD>蟾イ驟咲スョ
- 謨ー謐ョ蠎灘ョ壽悄螟<EFBFBD>サス蟾イ驟咲スョ
- 譌・蠢礼尅謗ァ蟾イ驟咲ス?
- 蝓溷錐DNS蟾イ隗」譫?
- 驍ョ莉カ譛榊苅蟾イ驟咲スョ<EFBFBD>亥庄騾会シ<EFBFBD>
<EFBFBD>屏<EFBFBD>?譌・蟶ク扈エ謚、蜻ス莉、
螳ケ蝎ィ邂。逅<EFBFBD>
# 蜷ッ蜉ィ譛榊苅
docker-compose up -d
# 蛛懈ュ「譛榊苅
docker-compose stop
# 驥榊星譛榊苅
docker-compose restart
# 蛛懈ュ「蟷カ蛻<EFBDB6>髯、螳ケ蝎ィ<E89D8E>域焚謐ョ菫晉蕗<E69989>?
docker-compose down
# 蛛懈ュ「蟷カ蛻<EFBDB6>髯、螳ケ蝎?謨ー謐ョ<E8AC90>亥些髯ゥ<E9ABAF><EFBDA9>シ?
docker-compose down -v
# 譟・逵区律蠢<E5BE8B>
docker-compose logs -f redcap-web
docker-compose logs -f redcap-mysql
# 霑帛<E99C91>螳ケ蝎ィ
docker exec -it redcap-apache bash
docker exec -it redcap-mysql bash
螟<EFBFBD>サス荳取△螟?
# 螟<>サス謨ー謐ョ蠎?
docker exec redcap-mysql mysqldump -uredcap_user -p'password' redcap > backup_$(date +%Y%m%d).sql
# 諱「螟肴焚謐ョ蠎?
docker exec -i redcap-mysql mysql -uredcap_user -p'password' redcap < backup_20260102.sql
# 螟<>サスedocs蜥荊emp逶ョ蠖<EFBDAE>
docker cp redcap-apache:/var/www/html/redcap/edocs ./backup_edocs
docker cp redcap-apache:/var/www/html/redcap/temp ./backup_temp
驥咲スョ邂。逅<EFBFBD>遭蟇<EFBFBD><EFBFBD>?
# 菴ソ逕ィ謌台サャ謠蝉セ帷噪閼壽<E996BC>?
docker cp scripts/create-redcap-password.php redcap-apache:/tmp/
docker exec redcap-apache php /tmp/create-redcap-password.php
# 譁ー蟇<EFBDB0><E89F87>∝ー<E2889D>仞遉コ蝨ィ霎灘<E99C8E>荳ュ
<EFBFBD>答 逶ク蜈ウ譁<EFBDB3>。」
- 髣ョ鬚俶賜譟・隸ヲ隗」<EFBFBD>喙13-驛ィ鄂イ髣ョ鬚俶賜譟・謇句<E8AC87>.md](./13-驛ィ鄂イ髣ョ鬚俶賜譟・謇句<E8AC87>.md)
- **API蠑蜿?*<2A>喙../03-API蟇ケ謗・荳主シ蜿?30-REDCap_API菴ソ逕ィ謖<EFBDA8>漉.md](../03-API蟇ケ謗・荳主シ蜿?30-REDCap_API菴ソ逕ィ謖<EFBDA8>漉.md)
- 邉サ扈滄<EFBFBD>鄂ョ<EFBFBD>喙../02-邉サ扈滄<E68988>鄂ョ荳手ソ千サ?20-REDCap邉サ扈滄<E68988>鄂ョ謇句<E8AC87>.md](../02-邉サ扈滄<E68988>鄂ョ荳手ソ千サ?20-REDCap邉サ扈滄<E68988>鄂ョ謇句<E8AC87>.md)
- REDCap螳俶婿譁<EFBFBD>。」<EFBFBD>喇ttps://projectredcap.org/
笨?諤サ扈<EFBDBB>
謌台サャ謠蝉セ帷噪Docker驟咲スョ譁<EFBFBD>サカ扈剰ソ<EFBFBD>ョ樊<EFBFBD>鬪瑚ッ<EFBFBD>シ悟キイ隗」蜀ウ謇譛牙クク隗<EFBFBD>琉鬚假シ<EFBFBD>
- 笨?Gzip蜴狗シゥ蜀イ遯<EFBFBD> 竊?閾ェ蜉ィ遖∫畑deflate讓。蝮<EFBDA1>
- 笨?CRLF豎。譟<EFBFBD> 竊?database.php譌<70>
?><EFBFBD>?gitattributes隗<73>激謐「陦檎ャ? - 笨?Base URL髞呵ッッ 竊?譁<>。」譏守。ョ隸エ譏朱<E8AD8F>鄂ョ譁ケ豕<EFBDB9>
- 笨?*霍ィ蟷ウ蜿ー蜈シ螳? 竊?Windows/Linux/Mac蝮<63>庄菴ソ逕ィ
蜿ッ螟咲畑諤ァ<EFBFBD><EFBFBD>
- <EFBFBD>売 Dockerfile.redcap<EFBFBD>?00%蜿ッ螟咲畑<E592B2>梧裏髴莉サ菴穂ソョ謾ケ
- <EFBFBD>売 docker-entrypoint.sh<EFBFBD>?00%蜿ッ螟咲<E89E9F>?
- <EFBFBD>売 php.ini<EFBFBD>?00%蜿ッ螟咲<E89E9F>?
- 笞<EFBFBD><EFBFBD><EFBFBD> docker-compose.yml<EFBFBD>夐怙譬ケ謐ョ邇ッ蠅<EFBFBD>ー<EFBFBD>紛遶ッ蜿」蜥悟差霍ッ蠕<EFBFBD>
- 笞<EFBFBD><EFBFBD><EFBFBD> database.php<EFBFBD>壼ソ<EFBFBD>。サ譬ケ謐ョ邇ッ蠅<EFBFBD>ョ壼宛謨ー謐ョ蠎楢ソ樊磁菫。諱ッ
荳倶ク豁・<EFBFBD><EFBFBD>
- 螳梧<EFBFBD>譛ャ蝨ー邇ッ蠅<EFBFBD>ェ瑚ッ<EFBFBD>
- 蠑蜿然EDCap API Adapter
- 蜃<EFBFBD>、<EFBFBD>函莠ァ邇ッ蠅<EFBFBD>Κ鄂イ
譛蛾琉鬚假シ<EFBFBD> 譟・逵<EFBDA5> 13-驛ィ鄂イ髣ョ鬚俶賜譟・謇句<E8AC87>.md 謌匁署Issue<75>?