добавляет AIRFLOW_UID
This commit is contained in:
@@ -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. **Скопируйте и настройте файл переменных окружения:**
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
@@ -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}
|
||||||
|
|||||||
11
env.example
11
env.example
@@ -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
|
|
||||||
@@ -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}"
|
||||||
|
|||||||
Reference in New Issue
Block a user