hello

airflow 설치 및 사용해보기

공식 문서: https://airflow.apache.org/docs/apache-airflow/stable/howto/docker-compose/index.html

  1. 스크립트 다운로드
curl -LfO 'https://airflow.apache.org/docs/apache-airflow/2.10.5/docker-compose.yaml'

docker-compose.yaml 다운로드

  1. 환경 변수 생성
AIRFLOW_UID=50000
AIRFLOW_GID=0

.env 파일

  1. airflow 초기화
docker-compose up airflow-init
  1. 실행
docker-compose up -d
  1. 웹 접속
uesrname: airflow
password: airflow

1회성으로 hello world 출력하는 DAG 작성하기

  1. 현재 파일 구조 파악
.
├── config
├── dags
├── docker-compose.yaml
├── logs
└── plugins
  1. dags 하위 폴더에 hello_world.py 작성
from airflow import DAG
from airflow.operators.python import PythonOperator
from datetime import datetime

# 단순히 print만 하는 함수
def say_hello():
    print("Hello, world!")

# DAG 정의
with DAG(
    dag_id="hello_world_dag",
    start_date=datetime(2024, 1, 1),
    schedule_interval=None,  # 스케줄 없음 = 수동 실행
    catchup=False,
    tags=["example"],
) as dag:

    hello_task = PythonOperator(
        task_id="say_hello",
        python_callable=say_hello,
    )

hello_world.py

  1. UI에서 auto refresh가 활성화되어 있으면 자동으로 해당 dag가 노출됨. (dag_id)
  1. Unpause 를 선택하고, Trigger DAG 버튼 클릭
Triggered hello_world_dag with new Run ID manual__2025-03-28T15:53:25.278584+00:00, it should start any moment now.

다음의 메시지가 출력됨

  1. 실행 결과 확인
초록색 숫자 1이 표시 (1회성 실행이기 때문)
한번의 실행 결과를 확인
Hello World 출력 확인