airflow 설치 및 사용해보기
공식 문서: https://airflow.apache.org/docs/apache-airflow/stable/howto/docker-compose/index.html
- 스크립트 다운로드
curl -LfO 'https://airflow.apache.org/docs/apache-airflow/2.10.5/docker-compose.yaml'
docker-compose.yaml 다운로드
- 환경 변수 생성
AIRFLOW_UID=50000
AIRFLOW_GID=0
.env 파일
- airflow 초기화
docker-compose up airflow-init
- 실행
docker-compose up -d
- 웹 접속
uesrname: airflow
password: airflow
1회성으로 hello world 출력하는 DAG 작성하기
- 현재 파일 구조 파악
.
├── config
├── dags
├── docker-compose.yaml
├── logs
└── plugins
- 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
- UI에서 auto refresh가 활성화되어 있으면 자동으로 해당 dag가 노출됨. (dag_id)

- 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.
다음의 메시지가 출력됨
- 실행 결과 확인


