fix: 避免 entrypoint 覆寫 .env 的 DB 憑證

僅保留 DB_HOST 強制設為 db(Docker service name),
移除對 DB_USERNAME / DB_DATABASE / DB_PASSWORD 的覆寫。
原本透過 container 環境變數回寫 .env 的機制會在密碼含
特殊字元時因 shell 展開截斷,導致 DB_PASSWORD 被清空。

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-05-28 17:07:29 +08:00
parent ab24f210a6
commit 4cf83375f3
+1 -4
View File
@@ -86,10 +86,7 @@ cat > /tmp/update_env.php << 'PHPEOF'
<?php
$env = file_get_contents('/var/www/.env');
$map = [
'DB_HOST' => 'db',
'DB_USERNAME' => (getenv('DB_USERNAME') ?: 'cfdiveuser'),
'DB_DATABASE' => (getenv('DB_DATABASE') ?: 'CFDivePlatform'),
'DB_PASSWORD' => (getenv('DB_PASSWORD') ?: ''),
'DB_HOST' => 'db',
];
foreach ($map as $key => $val) {
$env = preg_replace_callback(