добавляет AIRFLOW_UID

This commit is contained in:
2025-11-05 13:27:28 +03:00
parent 8d485ee016
commit 1b09f40135
6 changed files with 13 additions and 6 deletions

View File

@@ -7,6 +7,8 @@
```bash ```bash
git clone https://git.ooru.ru/radik/airflow_neo4j.git git clone https://git.ooru.ru/radik/airflow_neo4j.git
cd airflow_neo4j cd airflow_neo4j
mkdir -p logs plugins
chown -R 50000:0 logs plugins
``` ```
2. **Скопируйте и настройте файл переменных окружения:** 2. **Скопируйте и настройте файл переменных окружения:**

View File

View File

@@ -1,6 +1,7 @@
from datetime import datetime, timedelta from datetime import datetime, timedelta
from airflow import DAG from airflow import DAG
from airflow.decorators import task_group
from airflow.models import Variable from airflow.models import Variable
from airflow.operators.empty import EmptyOperator from airflow.operators.empty import EmptyOperator
from airflow.operators.python import PythonOperator from airflow.operators.python import PythonOperator

View File

@@ -23,12 +23,14 @@ services:
- neo4j_data:/data - neo4j_data:/data
restart: always restart: always
# TODO: убрать повторяющийся код, добавить airflow-init
airflow-webserver: airflow-webserver:
build: . build: .
depends_on: depends_on:
- postgres - postgres
- neo4j - neo4j
env_file: .env env_file: .env
user: "${AIRFLOW_UID:-50000}:0"
environment: environment:
AIRFLOW__CORE__EXECUTOR: LocalExecutor AIRFLOW__CORE__EXECUTOR: LocalExecutor
AIRFLOW__DATABASE__SQL_ALCHEMY_CONN: postgresql+psycopg2://${POSTGRES_USER}:${POSTGRES_PASSWORD}@postgres/${POSTGRES_DB} AIRFLOW__DATABASE__SQL_ALCHEMY_CONN: postgresql+psycopg2://${POSTGRES_USER}:${POSTGRES_PASSWORD}@postgres/${POSTGRES_DB}
@@ -49,6 +51,7 @@ services:
- neo4j - neo4j
- airflow-webserver - airflow-webserver
env_file: .env env_file: .env
user: "${AIRFLOW_UID:-50000}:0"
environment: environment:
AIRFLOW__CORE__EXECUTOR: LocalExecutor AIRFLOW__CORE__EXECUTOR: LocalExecutor
AIRFLOW__DATABASE__SQL_ALCHEMY_CONN: postgresql+psycopg2://${POSTGRES_USER}:${POSTGRES_PASSWORD}@postgres/${POSTGRES_DB} AIRFLOW__DATABASE__SQL_ALCHEMY_CONN: postgresql+psycopg2://${POSTGRES_USER}:${POSTGRES_PASSWORD}@postgres/${POSTGRES_DB}

View File

@@ -4,6 +4,9 @@ AIRFLOW_ADMIN_PASSWORD=admin
AIRFLOW_ADMIN_EMAIL=admin@example.com AIRFLOW_ADMIN_EMAIL=admin@example.com
AIRFLOW_ADMIN_FIRSTNAME=Admin AIRFLOW_ADMIN_FIRSTNAME=Admin
AIRFLOW_ADMIN_LASTNAME=User AIRFLOW_ADMIN_LASTNAME=User
AIRFLOW_UID=50000
AIRFLOW_HOME=/opt/airflow
# Database (Postgres) # Database (Postgres)
POSTGRES_USER=airflow POSTGRES_USER=airflow
@@ -11,10 +14,8 @@ POSTGRES_PASSWORD=airflow
POSTGRES_DB=airflow POSTGRES_DB=airflow
# Neo4j connection details # Neo4j connection details
NEO4J_CONN_ID= NEO4J_CONN_ID=target_db
NEO4J_URI= NEO4J_IP=
NEO4J_USER= NEO4J_USER=neo4j
NEO4J_PASSWORD= NEO4J_PASSWORD=
NEO4J_PORT=7687 NEO4J_PORT=7687
AIRFLOW_HOME=/opt/airflow

View File

@@ -25,7 +25,7 @@ if ! airflow connections list | grep -q "${NEO4J_CONN_ID}"; then
echo "🔌 Creating Neo4j connection..." echo "🔌 Creating Neo4j connection..."
airflow connections add "${NEO4J_CONN_ID}" \ airflow connections add "${NEO4J_CONN_ID}" \
--conn-type neo4j \ --conn-type neo4j \
--conn-host "${NEO4J_URI}" \ --conn-host "${NEO4J_IP}" \
--conn-login "${NEO4J_USER}" \ --conn-login "${NEO4J_USER}" \
--conn-password "${NEO4J_PASSWORD}" \ --conn-password "${NEO4J_PASSWORD}" \
--conn-port "${NEO4J_PORT}" --conn-port "${NEO4J_PORT}"