feat: added files for containerized airflow

main
Ricard Illa 2023-06-21 16:02:12 +02:00
parent 0a3323170f
commit b5ab3ca687
4 changed files with 55 additions and 0 deletions

1
.gitignore vendored
View File

@ -1 +1,2 @@
.ipynb_checkpoints
pipeline/state

View File

@ -0,0 +1,37 @@
---
version: "3.8"
x-airflow-common:
&airflow-common
image: us-docker.pkg.dev/cloud-airflow-releaser/airflow-worker-scheduler-2-5-1/airflow-worker-scheduler-2-5-1:composer-2.3.1-airflow-2-5-1
entrypoint: /usr/local/bin/airflow-entrypoint.sh
volumes:
- ./scripts/airflow-init.sh:/usr/local/bin/airflow-init.sh:ro
- ./scripts/airflow-entrypoint.sh:/usr/local/bin/airflow-entrypoint.sh:ro
- ../data:/home/airflow/gcs/data:ro
- ./state/airflow-data:/home/airflow/airflow
environment:
AIRFLOW__CORE__LOAD_EXAMPLES: 'false'
services:
airflow-init:
<<: *airflow-common
restart: "no"
entrypoint: /usr/local/bin/airflow-init.sh
airflow-scheduler:
<<: *airflow-common
command: airflow scheduler
depends_on:
airflow-init:
condition: service_completed_successfully
airflow-webserver:
<<: *airflow-common
command: airflow webserver
ports:
- 8080:8080
depends_on:
airflow-init:
condition: service_completed_successfully

View File

@ -0,0 +1,8 @@
#!/bin/sh
set -xe
[ -f composer_requirements.txt ] && pip3 install --upgrade -r composer_requirements.txt
[ -f dev_requirements.txt ] && pip3 install -r dev_requirements.txt
exec "$@"

View File

@ -0,0 +1,9 @@
#!/bin/sh
set -xe
sudo chown airflow:airflow airflow
airflow db init
# Allow non-authenticated access to UI for Airflow 2.*
sed -i.bak -E 's/^(# )?(AUTH_ROLE_PUBLIC) = .*$/\2 = "Admin"/' /home/airflow/airflow/webserver_config.py