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:
@@ -86,10 +86,7 @@ cat > /tmp/update_env.php << 'PHPEOF'
|
|||||||
<?php
|
<?php
|
||||||
$env = file_get_contents('/var/www/.env');
|
$env = file_get_contents('/var/www/.env');
|
||||||
$map = [
|
$map = [
|
||||||
'DB_HOST' => 'db',
|
'DB_HOST' => 'db',
|
||||||
'DB_USERNAME' => (getenv('DB_USERNAME') ?: 'cfdiveuser'),
|
|
||||||
'DB_DATABASE' => (getenv('DB_DATABASE') ?: 'CFDivePlatform'),
|
|
||||||
'DB_PASSWORD' => (getenv('DB_PASSWORD') ?: ''),
|
|
||||||
];
|
];
|
||||||
foreach ($map as $key => $val) {
|
foreach ($map as $key => $val) {
|
||||||
$env = preg_replace_callback(
|
$env = preg_replace_callback(
|
||||||
|
|||||||
Reference in New Issue
Block a user