From dc6597d36be8abb3eb8c259ece464a5a0e4e0174 Mon Sep 17 00:00:00 2001 From: ogt Date: Sat, 25 Apr 2026 01:43:43 +0800 Subject: [PATCH] =?UTF-8?q?[V10.4-D]=20=E7=92=B0=E5=A2=83=E8=AE=8A?= =?UTF-8?q?=E6=95=B8=E4=BF=AE=E5=BE=A9=EF=BC=9APOSTGRES=5FPASSWORD=20?= =?UTF-8?q?=E6=B3=A8=E5=85=A5=20+=20fail-fast=20=E5=AE=88=E8=A1=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修復 H7(排程器/Telegram Bot 容器中 POSTGRES_PASSWORD 為空): - docker-compose.yml: 移除 scheduler/telegram-bot 的 \${POSTGRES_*} environment 插值行,僅保留 env_file: .env(與 188 主機已上線版本同步) - config.py: USE_POSTGRESQL=true 時,POSTGRES_PASSWORD 空值立即 raise ValueError, 避免無聲連線失敗(原本只在執行期出現 auth error) - .env.example: 新增 GEMINI_API_KEY / GEMINI_MODEL / OPENCLAW_MODEL, 附 Gemini 2.0 Flash EOL 2026-06-01 警告 Co-Authored-By: Claude Sonnet 4.6 --- .env.example | 8 ++++++++ config.py | 10 ++++++++++ docker-compose.yml | 10 ++-------- 3 files changed, 20 insertions(+), 8 deletions(-) diff --git a/.env.example b/.env.example index 913fefe..5ed7a52 100644 --- a/.env.example +++ b/.env.example @@ -113,6 +113,14 @@ ELEPHANT_ALPHA_HERMES_MODEL=hermes3:latest ELEPHANT_ALPHA_NEMOTRON_NIM_ENDPOINT=https://integrate.api.nvidia.com/v1 ELEPHANT_ALPHA_OPENCLAW_GEMINI_ENDPOINT=https://generativelanguage.googleapis.com/v1beta +# ── Google Gemini API ─────────────────────────────────────────────────────── +# OpenClaw 策略師 / MCP Collector / Code Review Pipeline 共用金鑰 +# 取得方式:https://aistudio.google.com/app/apikey +# 注意:Gemini 2.0 Flash 將於 2026-06-01 關閉,後續需遷移至 2.5 Flash +GEMINI_API_KEY= +GEMINI_MODEL=gemini-1.5-flash +OPENCLAW_MODEL=gemini-2.5-flash-preview-05-20 + # Debug and Monitoring ELEPHANT_ALPHA_DEBUG_MODE=false ELEPHANT_ALPHA_METRICS_ENABLED=true diff --git a/config.py b/config.py index 06d6691..452428a 100644 --- a/config.py +++ b/config.py @@ -30,6 +30,16 @@ if USE_POSTGRESQL: POSTGRES_PASSWORD = os.getenv('POSTGRES_PASSWORD') POSTGRES_DB = os.getenv('POSTGRES_DB', 'momo_analytics') + # 檢查密碼是否設置 + if not POSTGRES_PASSWORD: + raise ValueError( + f"❌ 資料庫密碼未設置!請檢查:\n" + f"1. .env 檔案中是否設置了 POSTGRES_PASSWORD\n" + f"2. Docker Compose 環境變數是否正確傳遞\n" + f"3. 容器重啟後環境變數是否生效\n" + f"當前環境變數:USE_POSTGRESQL=true, POSTGRES_HOST={POSTGRES_HOST}, POSTGRES_USER={POSTGRES_USER}" + ) + DATABASE_PATH = f"postgresql://{POSTGRES_USER}:{POSTGRES_PASSWORD}@{POSTGRES_HOST}:{POSTGRES_PORT}/{POSTGRES_DB}" DATABASE_TYPE = 'postgresql' else: diff --git a/docker-compose.yml b/docker-compose.yml index b689e75..bd7bd4e 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -226,12 +226,9 @@ services: - PYTHONUNBUFFERED=1 - TZ=Asia/Taipei # 資料庫設定: Docker 環境使用 PostgreSQL + # H7 (2026-04-24): POSTGRES_* 改由 env_file: .env 唯一來源,移除 compose 層插值避免空值覆蓋 - USE_POSTGRESQL=true - - POSTGRES_HOST=${POSTGRES_HOST:-postgres} - POSTGRES_PORT=5432 - - POSTGRES_USER=${POSTGRES_USER:-momo} - - POSTGRES_PASSWORD=${POSTGRES_PASSWORD} - - POSTGRES_DB=${POSTGRES_DB:-momo_analytics} # Embedding 服務:bge-m3 on Hermes (ADR-003),永遠走內網免 auth - EMBEDDING_HOST=${EMBEDDING_HOST:-http://192.168.0.111:11434} env_file: @@ -274,12 +271,9 @@ services: - FLASK_ENV=production - PYTHONUNBUFFERED=1 - TZ=Asia/Taipei + # H7 (2026-04-24): POSTGRES_* 改由 env_file: .env 唯一來源,移除 compose 層插值避免空值覆蓋 - USE_POSTGRESQL=true - - POSTGRES_HOST=${POSTGRES_HOST:-postgres} - POSTGRES_PORT=5432 - - POSTGRES_USER=${POSTGRES_USER:-momo} - - POSTGRES_PASSWORD=${POSTGRES_PASSWORD} - - POSTGRES_DB=${POSTGRES_DB:-momo_analytics} - EMBEDDING_HOST=${EMBEDDING_HOST:-http://192.168.0.111:11434} env_file: - .env