Fix: Remove .env bind mount to prevent directory mount issue, use env var instead

This commit is contained in:
salvacybersec
2025-11-11 05:54:31 +03:00
parent df203b6f32
commit 3c01dc63a4
2 changed files with 16 additions and 16 deletions

View File

@@ -30,21 +30,14 @@ if [ -z "$SESSION_SECRET" ] || [ "$SESSION_SECRET" = "change-this-to-a-very-stro
# .env dosyası yolu
ENV_FILE="/app/backend/.env"
# Eğer .env bir dizin ise (bind mount sorunu), sil ve dosya olarak oluştur
# Eğer .env bir dizin ise (bind mount sorunu), bind mount'u atla
# Sadece environment variable olarak kullan
if [ -d "$ENV_FILE" ]; then
echo "⚠️ .env bir dizin olarak tespit edildi, düzeltiliyor..."
rm -rf "$ENV_FILE"
fi
# .env dizinini oluştur (yoksa)
mkdir -p "$(dirname "$ENV_FILE")"
# Session secret'ı .env dosyasına kaydet (persist)
if [ ! -f "$ENV_FILE" ]; then
echo "SESSION_SECRET=$SESSION_SECRET" > "$ENV_FILE"
echo "✅ Yeni SESSION_SECRET oluşturuldu ve .env dosyasına kaydedildi"
echo "⚠️ .env bir dizin olarak tespit edildi (bind mount sorunu)"
echo "⚠️ SESSION_SECRET sadece environment variable olarak kullanılacak"
echo "📝 SESSION_SECRET: ${SESSION_SECRET:0:20}... (ilk 20 karakter)"
else
echo "💡 İpucu: Host'ta .env dosyası oluşturun veya docker-compose.yml'de SESSION_SECRET environment variable'ı kullanın"
elif [ -f "$ENV_FILE" ]; then
# Mevcut .env dosyasını güncelle
if grep -q "^SESSION_SECRET=" "$ENV_FILE"; then
sed -i "s|^SESSION_SECRET=.*|SESSION_SECRET=$SESSION_SECRET|" "$ENV_FILE"
@@ -52,6 +45,13 @@ if [ -z "$SESSION_SECRET" ] || [ "$SESSION_SECRET" = "change-this-to-a-very-stro
echo "SESSION_SECRET=$SESSION_SECRET" >> "$ENV_FILE"
fi
echo "✅ SESSION_SECRET güncellendi ve .env dosyasına kaydedildi"
echo "📝 SESSION_SECRET: ${SESSION_SECRET:0:20}... (ilk 20 karakter)"
else
# .env dosyası yok, oluştur
mkdir -p "$(dirname "$ENV_FILE")"
echo "SESSION_SECRET=$SESSION_SECRET" > "$ENV_FILE"
echo "✅ Yeni SESSION_SECRET oluşturuldu ve .env dosyasına kaydedildi"
echo "📝 SESSION_SECRET: ${SESSION_SECRET:0:20}... (ilk 20 karakter)"
fi
fi
else