diff --git a/docker-compose.yml b/docker-compose.yml index 6d45ad70..4ed09404 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,4 +1,4 @@ -version: '3' +version: '3.9' x-airflow-common: &airflow-common @@ -43,19 +43,31 @@ services: airflow-init: <<: *airflow-common command: > - bash -c "pip install -r /opt/airflow/requirements.txt && airflow db init && airflow db upgrade && airflow users create --username admin --firstname admin --lastname admin --role Admin --email airflow@airflow.com --password admin" + bash -c "airflow db init && airflow db upgrade && airflow users create --username admin --firstname admin --lastname admin --role Admin --email airflow@airflow.com --password admin" restart: "no" airflow-webserver: <<: *airflow-common + user: airflow command: webserver ports: - "8080:8080" + depends_on: + airflow-init: + condition: service_completed_successfully airflow-scheduler: <<: *airflow-common + user: airflow command: scheduler + depends_on: + airflow-init: + condition: service_completed_successfully airflow-worker: <<: *airflow-common + user: airflow command: celery worker + depends_on: + airflow-init: + condition: service_completed_successfully \ No newline at end of file diff --git a/requirements.txt b/requirements.txt index 5b96742a..94b9d363 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,7 +5,7 @@ aiosignal==1.3.1 alembic==1.12.0 annotated-types==0.6.0 anyio==4.0.0 -apache-airflow==2.7.2 +apache-airflow==2.7.1 apache-airflow-providers-common-sql==1.8.0 apache-airflow-providers-ftp==3.6.0 apache-airflow-providers-http==4.6.0