[Airflow] Docker 기반 Airflow 설치

MINJI·2024년 11월 8일

📖 Running Airflow in Docker 참고문서
https://airflow.apache.org/docs/apache-airflow/stable/howto/docker-compose/index.html

⭐ Docker 기반 Airflow 실행

1. Docker 설치

https://velog.io/@tengury5/Docker-Windows-환경에서-Docker-설치


2. Docker Compose 파일 준비

Airflow는 여러 컨테이너를 필요로 하기 때문에 Docker Compose를 사용해 설정합니다. Airflow 프로젝트 디렉터리를 만들고 그 안에 docker-compose.yml 파일을 작성하세요.

프로젝트 폴더 생성 및 이동

mkdir airflow-docker
cd airflow-docker

Fetching docker-compose.yaml

  • docker-compose.yml 파일 생성
curl -LfO 'https://airflow.apache.org/docs/apache-airflow/2.10.3/docker-compose.yaml'

🎯강의용 실습 따라하기용 compose 파일
1. 실습용 git repo 클론하기

git clone https://github.com/keeyong/airflow-setup.git

  1. airflow-setup 디렉토리로 위치이동 -> .yaml 파일 생성
curl -Lf0 'https://airflow.apache.org/docs/apache-airflow/2.9.1/docker-compose.yaml'

  1. yaml 파일 pull/up
docker compose -f docker-compose.yaml pull
docker compose -f docker-compose.yaml up

3. Airflow 초기화

Setting the right Airflow user

  • dags, logs, plugins, config 디렉토리 생성
mkdir -p ./dags ./logs ./plugins ./config
  • AIRFLOW_UID 설정 (윈도우는 필요하진않지만 경고 제거하려면 .env 파일을 만들면 해결할 수 있음
echo -e "AIRFLOW_UID=$(id -u)" > .env

Initialize the database

  • Airflow를 처음 실행하기 전에 초기화 작업이 필요
docker compose up airflow-init

4. Airflow 실행

  • 초기화가 완료되면 Ctrl+c로 중지하고, 웹 서버와 스케줄러 시작하기
docker compose up -d

(기존에 memory 관련 경고 떴던 것도 .wslconfig 파일에 메모리와 cpu를 할당해줬더니 경고없이 잘 해결 된 것 같다 / 수정한 후에 wsl --shutdown 명령어로 변경사항을 적용해줘야 반영이 된다)


5. Airflow 웹 UI 접속

  • 브라우저에서 http://localhost:8080에 접속하여 Airflow 웹 UI 접근하기
  • 로그인 화면이 나타나면
    • Username : airflow
    • Password : airflow

  • Airflow 접속 완료!!!!


⬇️강의 실습용 Airflow화면

0개의 댓글