Отладка доступа к /opt/airflow/data
This commit is contained in:
@@ -2,7 +2,7 @@ SHELL := /bin/bash
|
|||||||
UV := uv
|
UV := uv
|
||||||
PYTHON_VERSION := 3.11
|
PYTHON_VERSION := 3.11
|
||||||
|
|
||||||
.PHONY: up down start stop airflow-init logs gp-psql ddl-gp dev-setup dev-sync dev-lock test lint fmt clean-venv
|
.PHONY: up down airflow-init logs gp-psql ddl-gp dev-setup dev-sync dev-lock test lint fmt clean-venv
|
||||||
|
|
||||||
up:
|
up:
|
||||||
docker compose -f docker-compose.yml up -d
|
docker compose -f docker-compose.yml up -d
|
||||||
@@ -10,12 +10,6 @@ up:
|
|||||||
down:
|
down:
|
||||||
docker compose -f docker-compose.yml down -v
|
docker compose -f docker-compose.yml down -v
|
||||||
|
|
||||||
start:
|
|
||||||
docker compose -f docker-compose.yml start
|
|
||||||
|
|
||||||
stop:
|
|
||||||
docker compose -f docker-compose.yml stop
|
|
||||||
|
|
||||||
airflow-init:
|
airflow-init:
|
||||||
docker compose -f docker-compose.yml run --rm airflow-init
|
docker compose -f docker-compose.yml run --rm airflow-init
|
||||||
|
|
||||||
|
|||||||
@@ -41,9 +41,6 @@ cp .env.example .env
|
|||||||
|
|
||||||
# Запустите стек (это может занять 2-3 минуты при первом запуске)
|
# Запустите стек (это может занять 2-3 минуты при первом запуске)
|
||||||
docker compose up -d
|
docker compose up -d
|
||||||
|
|
||||||
# Инициализируйте Airflow
|
|
||||||
docker compose run --rm airflow-init
|
|
||||||
```
|
```
|
||||||
|
|
||||||
### Шаг 3: Первый запуск pipeline
|
### Шаг 3: Первый запуск pipeline
|
||||||
@@ -81,7 +78,7 @@ CSV-файлы после выполнения DAG остаются в дире
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
make down # Остановить и стереть данные в контейнерах
|
make down # Остановить и стереть данные в контейнерах
|
||||||
make up && make airflow-init
|
make up
|
||||||
```
|
```
|
||||||
|
|
||||||
Это помогает, когда Greenplum не стартует из‑за «грязной» остановки и внутренних файлов.
|
Это помогает, когда Greenplum не стартует из‑за «грязной» остановки и внутренних файлов.
|
||||||
|
|||||||
+8
-3
@@ -33,6 +33,7 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
- ./sql:/sql:ro
|
- ./sql:/sql:ro
|
||||||
- greenplum_data:/data
|
- greenplum_data:/data
|
||||||
|
- airflow_data:/opt/airflow/data
|
||||||
# Простая проверка доступности: psql откликается
|
# Простая проверка доступности: psql откликается
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: ["CMD-SHELL", "pg_isready -h 127.0.0.1 -p 5432 -U ${GP_USER:-gpadmin} -d ${GP_DB:-gpadmin} || echo 1"]
|
test: ["CMD-SHELL", "pg_isready -h 127.0.0.1 -p 5432 -U ${GP_USER:-gpadmin} -d ${GP_DB:-gpadmin} || echo 1"]
|
||||||
@@ -56,7 +57,7 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
- ./airflow/dags:/opt/airflow/dags
|
- ./airflow/dags:/opt/airflow/dags
|
||||||
- ./airflow/requirements.txt:/opt/airflow/requirements.txt
|
- ./airflow/requirements.txt:/opt/airflow/requirements.txt
|
||||||
- ./data:/opt/airflow/data
|
- airflow_data:/opt/airflow/data
|
||||||
depends_on:
|
depends_on:
|
||||||
pgmeta:
|
pgmeta:
|
||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
@@ -77,7 +78,7 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
- ./airflow/dags:/opt/airflow/dags
|
- ./airflow/dags:/opt/airflow/dags
|
||||||
- ./airflow/requirements.txt:/opt/airflow/requirements.txt
|
- ./airflow/requirements.txt:/opt/airflow/requirements.txt
|
||||||
- ./data:/opt/airflow/data
|
- airflow_data:/opt/airflow/data
|
||||||
depends_on:
|
depends_on:
|
||||||
pgmeta:
|
pgmeta:
|
||||||
condition: service_healthy
|
condition: service_healthy
|
||||||
@@ -92,13 +93,16 @@ services:
|
|||||||
AIRFLOW__CORE__LOAD_EXAMPLES: "False"
|
AIRFLOW__CORE__LOAD_EXAMPLES: "False"
|
||||||
AIRFLOW__DATABASE__SQL_ALCHEMY_CONN: postgresql+psycopg2://${PG_USER}:${PG_PASSWORD}@pgmeta:5432/${PG_DB}
|
AIRFLOW__DATABASE__SQL_ALCHEMY_CONN: postgresql+psycopg2://${PG_USER}:${PG_PASSWORD}@pgmeta:5432/${PG_DB}
|
||||||
AIRFLOW__WEBSERVER__SECRET_KEY: ${AIRFLOW__WEBSERVER__SECRET_KEY}
|
AIRFLOW__WEBSERVER__SECRET_KEY: ${AIRFLOW__WEBSERVER__SECRET_KEY}
|
||||||
|
user: "0:0"
|
||||||
volumes:
|
volumes:
|
||||||
- ./airflow/dags:/opt/airflow/dags
|
- ./airflow/dags:/opt/airflow/dags
|
||||||
- ./airflow/requirements.txt:/opt/airflow/requirements.txt
|
- ./airflow/requirements.txt:/opt/airflow/requirements.txt
|
||||||
- ./data:/opt/airflow/data
|
- airflow_data:/opt/airflow/data
|
||||||
command: >
|
command: >
|
||||||
bash -lc "
|
bash -lc "
|
||||||
set -e;
|
set -e;
|
||||||
|
# mkdir -p /opt/airflow/data && chmod -R 777 /opt/airflow/data;
|
||||||
|
# su - airflow;
|
||||||
pip install --no-cache-dir -r /opt/airflow/requirements.txt;
|
pip install --no-cache-dir -r /opt/airflow/requirements.txt;
|
||||||
# Дожидаемся готовности БД ретрая миграции
|
# Дожидаемся готовности БД ретрая миграции
|
||||||
for i in {1..30}; do
|
for i in {1..30}; do
|
||||||
@@ -114,3 +118,4 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
pgmeta:
|
pgmeta:
|
||||||
greenplum_data:
|
greenplum_data:
|
||||||
|
airflow_data:
|
||||||
|
|||||||
Reference in New Issue
Block a user