bfddfdfdfewe
This commit is contained in:
24
scripts/diag_env.py
Normal file
24
scripts/diag_env.py
Normal file
@@ -0,0 +1,24 @@
|
||||
"""检查 .env 里的 POSTGRES_USER"""
|
||||
import os, paramiko
|
||||
c = paramiko.SSHClient()
|
||||
c.set_missing_host_key_policy(paramiko.AutoAddPolicy())
|
||||
c.connect("207.57.129.228", port=19717, username="root",
|
||||
password=os.environ["REMOTE_PASS"],
|
||||
timeout=30, allow_agent=False, look_for_keys=False)
|
||||
|
||||
# 看 .env
|
||||
si, so, se = c.exec_command("bash -lc 'cd /srv/news && grep -E \"^POSTGRES_(USER|DB|PASSWORD)=\" .env'", timeout=10)
|
||||
print("=== .env ===")
|
||||
print(so.read().decode(errors="replace"))
|
||||
|
||||
# 直接 set 然后 echo
|
||||
si, so, se = c.exec_command("bash -lc 'cd /srv/news && set -a && . ./.env && set +a && echo \"USER=$POSTGRES_USER DB=$POSTGRES_DB\"'", timeout=10)
|
||||
print("=== set -a 之后 ===")
|
||||
print(so.read().decode(errors="replace"))
|
||||
|
||||
# 最简方式: 传 PGPASSWORD
|
||||
si, so, se = c.exec_command("bash -lc 'cd /srv/news && docker compose exec -T -e PGPASSWORD=news postgres psql -U news -d news -f /tmp/diag.sql'", timeout=15)
|
||||
print("=== 硬编码 USER/DB ===")
|
||||
print(so.read().decode(errors="replace"))
|
||||
|
||||
c.close()
|
||||
Reference in New Issue
Block a user