이런 오류가 떴다면 필요한 python 라이브러리를 정의하지 않았거나 설치하지 않았다는 뜻이다.
Airflow의 DAG를 Docker 컨테이너 내에서 실행시키려면 requirements.txt파일에 필요한 Python 패키지를 정의하고, 그 패키지들을 Docker 컨테이너 내에 설치해야 한다.
이렇게 해야 DAG가 필요한 모듈 및 라이브러리를 올바르게 사용할 수 있다.
1. requirements.txt 작성
예를 들어, 위와 같은 오류 메세지가 뜬 경우 xmltodict라는 라이브러리를 설치하도록 requirements.txt를 작성해주면 된다.
라이브러리만 작성할 경우 최신버전으로 설치되니 특정 버전을 설치하고 싶다면 ==1.4.0 과 같이 지정해주면 된다.
2. Dockerfile 작성
이제 docker를 실행할 때 이 requirements.txt 내의 라이브러리가 설치되도록 작성하면 된다.
해결이 안 된다면..
만약 이렇게 해도 같은 오류가 뜬다면 docker-compose.yaml 파일을 확인해보자.
dockerfile: 부분의 Dockerfile이 작성한 dockerfile의 파일명과 동일해야 한다.
반응형