Правки airflow-init

This commit is contained in:
2025-09-17 20:46:44 +03:00
parent e7e40d18f7
commit 806e1dc3e4
2 changed files with 19 additions and 9 deletions
+1 -1
View File
@@ -7,7 +7,7 @@ down:
docker compose -f docker-compose.yml down -v
airflow-init:
docker compose -f docker-compose.yml run --rm airflow-init
docker compose -f docker-compose.yml run --rm --profile init airflow-init
logs:
docker compose -f docker-compose.yml logs -f airflow-webserver airflow-scheduler
+18 -8
View File
@@ -117,20 +117,30 @@ services:
airflow-init:
image: apache/airflow:2.9.2
container_name: gp_airflow_init
# container_name: gp_airflow_init
profiles: ["init"]
env_file: .env
environment:
AIRFLOW__CORE__LOAD_EXAMPLES: "False"
AIRFLOW__DATABASE__SQL_ALCHEMY_CONN: postgresql+psycopg2://${PG_USER}:${PG_PASSWORD}@pgmeta:5432/${PG_DB}
volumes:
- ./airflow/dags:/opt/airflow/dags
- ./airflow/requirements.txt:/opt/airflow/requirements.txt
entrypoint: ["/bin/bash", "-lc"]
command: |
set -e
until pg_isready -h pgmeta -U ${PG_USER} -d ${PG_DB}; do echo 'waiting for pgmeta'; sleep 2; done
pip install --no-cache-dir -r /opt/airflow/requirements.txt
airflow db migrate
airflow users create --username ${AIRFLOW_USER} --password ${AIRFLOW_PASSWORD} --firstname Admin --lastname User --role Admin --email admin@example.org
command: >
bash -lc "
set -e;
pip install --no-cache-dir -r /opt/airflow/requirements.txt;
# Дожидаемся готовности БД ретрая миграции
for i in {1..30}; do
airflow db migrate && break || echo 'waiting for pgmeta' && sleep 3;
done;
# Создаём админа; при повторном запуске не падаем
airflow users create
--username ${AIRFLOW_USER}
--password ${AIRFLOW_PASSWORD}
--firstname Admin --lastname User
--role Admin --email admin@example.org || true
"
depends_on:
pgmeta:
condition: service_healthy