NIRVANA
[Apache Airflow] 도커로 환경 구축하기 본문
1. docker-compse.yaml 파일 다운로드 받기
https://airflow.apache.org/docs/apache-airflow/2.9.3/docker-compose.yaml
에서 우클릭을 통해 docker-compose.yaml 파일을 다운로드 받는다.
yaml 파일에 정의되어 있는 것들
- airflow-scheduler- 스케줄러는 모든 작업과 DAG를 모니터링하고, 종속성이 완료되면 작업 인스턴스를 트리거
- airflow-webserver- 웹서버는 http://localhost:8080 에서 이용 가능
- airflow-worker- 스케줄러가 지정한 작업을 실행하는 작업자
- airflow-triggerer- 트리거는 연기 가능한 작업에 대한 이벤트 루프를 실행
- airflow-init- 초기화 서비스
- postgres- 데이터베이스
- redis- 레디스, 스케줄러에서 워커로 메시지를 전달하는 브로커
2. .env 파일에서 UID 정의
AIRFLOW_UID=50000
docker-compose.yaml 파일이 있는 디렉토리에 .env 파일을 생성한 후 UID를 정의해준다
3. 데이터베이스 초기화
docker compose up airflow-init
모든 운영체제에서 데이터베이스 마이그레이션을 실행하고, 첫번째 사용자 계정을 생성하기 위해 위의 명령어 실행
4. docker-compose up
docker-compose up
도커 컴포즈를 진행한다.

다음과 같이 컨테이너가 실행된 것을 확인할 수 있다

초기 아이디이자 비밀번호인 airflow를 입력하여 로그인한다

예제 DAG들이 있는 모습!
참고:
https://airflow.apache.org/docs/apache-airflow/stable/howto/docker-compose/index.html
Running Airflow in Docker — Airflow Documentation
airflow.apache.org
https://it-is-my-life.tistory.com/21
[airflow] Docker에서 airflow 환경 설정 및 실행하기
이번 포스팅에서는 Docker-compose를 활용하여 apache airflow를 실행하는 방법을 다룬다. 본 포스팅은 airflow 공식 document의 "Running airflow in Docker"를 참고하였으며 하단의 링크를 통해서 해당 문서로 이동
it-is-my-life.tistory.com
'DataEngineering' 카테고리의 다른 글
| [Apache Spark] 스트림 데이터 처리 (2) | 2024.08.04 |
|---|---|
| [Apache Airflow] Apache Airflow 기반의 데이터 파이프라인 CH2 정리 (0) | 2024.07.25 |
| [Apache Airflow] Apache Airflow 기반의 데이터 파이프라인 CH1 정리 (2) | 2024.07.24 |
| [ELK 스택] ElasticSearch (0) | 2024.07.02 |
| [Apache Kafka] 아파치 카프카란? (0) | 2024.06.30 |