bashoperator에 외부 쉘파일 수행하기
안녕하세요 강사님~
airflow를 이제 막 배우는 학생입니다.
다름이 아니라 bashoperator에 외부 쉘파일 수행하기에서 airflow에서 dag을 실행하면 해당 경로를 찾을 수 없다고 나와서요
제가 root 계정으로 실습 진행하고 있는데 opt를 root 경로로 바꿔봐도 동일한 증상이 계속됩니다.
추가로 py 코드에서 경로를 왜 opt로 주셨는지도 궁금합니다!
답변 1
0
안녕하세요 05305님
맨 아래 캡처하신 것이 WSL 내 디렉토리 정보인거죠?
현재 WSL의 /root/airflow/plugins 디렉토리가 있다면 이것을 컨테이너와 연결하기 위해서는 아래처럼 작성되어야 합니다.
- /root/airflow/plugins:/opt/airflow/plugins콜론(:)을 기준으로 왼쪽이 WSL의 볼륨, 오른쪽이 컨테이너의 볼륨이죠.
지금 05305님의 경우 강의 내용처럼 아래 그대로 적용되어 있습니다.
- ${AIRFLOW_PROJ_DIR:-.}/airflow/plugins:/opt/airflow/plugins이것은 WSL의 {yaml파일이 존재하는 디렉토리}/airflow/plugins 디렉토리를 컨테이너와 연결하는 것이므로 /root/airflow/plugins 디렉토리가 컨테이너와 연결되지는 못합니다.
그리고 두 번째 질문주신것은
airflow 도커이미지는 기본적으로 /opt/airflow 경로가 Airflow의 홈 경로입니다.
즉 환경변수로는 $AIRFLOW_HOME=/opt/airflow 입니다. 컨테이너 안으로 들어가서 환경변수를 보면 알 수 있습니다.

강의 뒷부분에서 다루겠지만 airflow의 홈디렉토리 아래의 plugins 디렉토리나 config 디렉토리, dags 디렉토리는 airflow가 DAG 실행시 기본적으로 PYTHON PATH로 인식하게 됩니다.
그래서 /opt/airflow 아래에 dag 디렉토리, plugins 디렉토리, config 디렉토리 등을 연결해주는 것입니다.
컨테이너로 airflow를 실행하는한 plugins나 dags, config 디렉토리는 /opt/airflow 경로 아래에 둬야 합니다.
마지막으로 05305님이 언급하신
제가 root 계정으로 실습 진행하고 있는데 opt를 root 경로로 바꿔봐도 동일한 증상이 계속됩니다.
요것은 지금 yaml의 volumes 항목의 의미에 대해서 헷갈리신것 같은데요. 첫 문장에서 설명한 것이긴 한데 다시 한번 말씀드리자면 콜론(:)을 기준으로 왼쪽이 연결할 WSL의 볼륨, 오른쪽이 연결될 컨테이너의 볼륨입니다.
따라서 WSL상에 존재하는 /root/airflow/plugins 경로를 왼쪽에 입력해야 하는 겁니다.
이해 되셨을까요?
아직 이해 안되셨음 언제든지 질문 또 남겨주세요 ^^
0
안녕하세요~
어제까지는 분명 안 됐는데 오늘 다시 실행하더니 되네요ㅠㅠ
yaml파일이 root 디렉토리 안에 있어서 wsl의 볼륨을 수정하지 않아도 실행이 됐던 것 같습니다.(어제 안된 이유는 모름ㅠ)
볼륨의 경로의 의미를 정확하게 이해하지 못 했는데 답변 덕분에 yaml 기준의 경로라는것을 완벽 이해할 수 있었습니다.
다시 한 번 좋은 강의 감사드리며 끝까지 달려보겠습니다!
pykrx 회원제 전환으로 인한 실습 불가
0
109
2
수료증 발급
0
81
3
에러 발생 관련 질문드립니다.
0
82
2
vscode 작업화면에 오류가 발생하지 않습니다.
0
69
2
plugins 폴더 생성
0
74
2
WSL에서 git push 가 안되요 ㅠ
0
112
2
chatGPT&Airflow로 블로그 자동 포스팅하기 는 Deprecated 가 필요합니다.
0
66
2
github에 회원가입이 안되는데 원인이 뭔지 모르겠어요 ㅠ
0
721
2
설치중인데 venv를 꼭 써야할까요?
0
124
2
설치 버전 관련 질문입니다.
0
68
1
우분투 버전 다운받아야하는데 어떤걸로 설치해야할까요?
0
62
1
DAG 만들기 중 airflow 패키지 로드 에러
0
106
2
3.0에서도 수업노트가 성립하는지 확인 부탁드립니다!
0
95
3
task_id 사용법이 뭔가 바뀐 것 같습니다.
0
76
3
email operator 오류 관련
0
66
2
plugins 폴더 관련
0
95
2
bash operator 관련 문의입니다
0
78
3
스케쥴러 - DAG 파싱 부하 줄이는 과정 질문
0
79
2
Dags refresh 주기 관련 질문
0
123
2
wsl 관련 질문입니다.!
0
73
2
macOS에서 docker 설치
0
93
2
템플릿 변수에 대한 오류
0
61
2
custom_image 디렉토리 문의드립니다.
0
54
2
ETL 인터뷰 관련 문의
0
103
2





