Je to trochu složitější, ale tady je to, co pro mě fungovalo. Pomohu vám nastavit Quickstart App Engine pomocí psycopg2 a poté získáte nápad.
Použijte Rychlý start pro Python ve flexibilním prostředí App Engine dokumentaci k nastavení a nasazení aplikace.
Použijte Připojení z App Engine dokumentaci pro připojení k vaší aplikaci App Engine ke Cloud SQL Postgre SQL.
Udělal jsem drobné úpravy, aby to fungovalo:
V app.yaml
přidat:
V requirements.txt
přidat:
psycopg2psycopg2-binary
V main.py
přidat:
@app.route('/connect')def connect():try:#host='172.17.0.1' je výchozí IP pro kontejner dockeru, který se vytváří během nasazení aplikace Engine conn =psycopg2.connect("dbname='postgres' user='postgres' host='172.17.0.1' password='test'") return "Připojení bylo navázáno!" kromě:return "Nemohu se připojit k databázi"
Použijte nasazení aplikace gcloud
příkaz k nasazení aplikace.
Po nasazení použijte procházení aplikace gcloud
příkaz k otevření aplikace v prohlížeči.
Při přístupu na odkaz https://[PROJECT_ID].appspot.com/connect
Mělo by odpovědět Připojení bylo navázáno!