我正在嘗試自動化 Docker 中的 INIT 程序,所以每當我在一個空的資料目錄中進行 docker-compose 時,它??都會創建兩個 DBS 第一個是 Airflow,第二個是我的測驗資料庫,例如當我 docker-compose up Postgres 運行時我的新測驗資料庫中用于創建表的第一個 SQL 檔案。但是,它沒有運行我已經安裝在 docker-entry 點中的插入 SQL 檔案它在 Airflow 資料庫中運行這些檔案是什么,誰能告訴我如何在我的測驗資料庫中插入所有元資料表而不是氣流一個謝謝
我的 docker-compose 檔案
postgres:
image: postgres:13
environment:
POSTGRES_USER: airflow
POSTGRES_PASSWORD: airflow
POSTGRES_MULTIPLE_DATABASES: airflow ,docker_airflow
ports:
- "5432:5432"
volumes:
- postgres-db-volume:/var/lib/postgresql/data
- ../data-platform/db/metadata/init/1._ddl.sql:/docker-entrypoint-initdb.d/1._ddl.sql
- ../data-platform/db/metadata/init/2._init.sql:/docker-entrypoint-initdb.d/2._init.sql
- ../data-platform/db/metadata/init/3._props.sql:/docker-entrypoint-initdb.d/3._props.sql
- ../data-platform/db/metadata/init/4.ge_ddl.sql:/docker-entrypoint-initdb.d/4.ge_ddl.sql
- ../data-platform/db/metadata/init/5.ge_init.sql:/docker-entrypoint-initdb.d/5.ge_init.sql
- ../data-platform/db/metadata/init/6._be_lu_nl.sql:/docker-entrypoint-initdb.d/6._be_lu_nl.sql
- ../data-platform/db/metadata/init/7._registration_nl_lifecycle.sql:/docker-entrypoint-initdb.d/7._registration_nl_lifecycle.sql
healthcheck:
test: ["CMD", "pg_isready", "-U", "airflow"]
interval: 5s
retries: 5
restart: always
uj5u.com熱心網友回復:
運行腳本時,您需要使用正確的資訊設定每個腳本。它們使用默認憑據運行,這意味著它們還連接到默認資料庫。
您可以在每個檔案的開頭添加 psql 以使用\c somedb. 它需要在每個腳本中,因為它們是單獨運行的,并且在運行之間不會保存任何資訊。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/480091.html
標籤:PostgreSQL 码头工人 码头工人撰写 空气流动
