인프런 커뮤니티 질문&답변
Docker 에서 airflow 사용시 질문드립니다
작성
·
868
·
수정됨
답변 2
0
0
미쿡엔지니어
지식공유자
안녕하세요 gogo91rla님,
좋은 질문입니다!
https://github.com/dimz119/learn-apache-airflow/blob/main/docker-compose.yaml#L60
요기 코드를 보시면 아시겠지만, airflow 안에서는 postgres로 접근 가능합니다.
https://github.com/dimz119/learn-apache-airflow/blob/main/docker-compose.yaml#L89
username과 password도 위에 있습니다.
 ~/ docker ps
CONTAINER ID   IMAGE                  COMMAND                  CREATED          STATUS                             PORTS                    NAMES
5ccbd0b29de7   apache/airflow:2.6.2   "/usr/bin/dumb-init …"   13 minutes ago   Up 17 seconds (health: starting)   8080/tcp                 learn-apache-airflow-airflow-scheduler-1
45dbfab1cc67   apache/airflow:2.6.2   "/usr/bin/dumb-init …"   13 minutes ago   Up 17 seconds (health: starting)   8080/tcp                 learn-apache-airflow-airflow-worker-1
398a35c71e53   apache/airflow:2.6.2   "/usr/bin/dumb-init …"   13 minutes ago   Up 17 seconds (health: starting)   8080/tcp                 learn-apache-airflow-airflow-triggerer-1
7d04c2991435   apache/airflow:2.6.2   "/usr/bin/dumb-init …"   13 minutes ago   Up 17 seconds (health: starting)   0.0.0.0:8080->8080/tcp   learn-apache-airflow-airflow-webserver-1
2bef277a9d27   postgres:13            "docker-entrypoint.s…"   13 minutes ago   Up 33 seconds (healthy)            0.0.0.0:5432->5432/tcp   learn-apache-airflow-postgres-1
79610a762a93   redis:latest           "docker-entrypoint.s…"   13 minutes ago   Up 33 seconds (healthy)            6379/tcp                 learn-apache-airflow-redis-1
 ~/ docker exec -it 7d04c2991435 /bin/bash
airflow@7d04c2991435:/opt/airflow$ nc -vz postgres 5432
Connection to postgres (172.31.0.3) 5432 port [tcp/postgresql] succeeded!
airflow@7d04c2991435:/opt/airflow$
조만간 한번 만들어 보겠습니다 ㅎㅎ
참고로 여기에 sample_table 만드시고 하셔야 합니다
미쿡엔지니어
지식공유자
네 db 생성 위치가 다릅니다. 그리고 다커 내부에서 밖에 있는 db에 접근하시려면 접근 가능한 도메인이어야 합니다. 랩탑에서 따로 돌린 티비에는 접근 불가능할 겁니다.







 DB connection info
DB connection info

답변 감사합니다.
혹시 여기에 sample_table을 만든다는 말은 Docker Airflow에 이미 설치된 Postgres DB에 샘플테이플을 생성해야한다는 말씀이실까요? 강의에서는 Local 에서 Postgres DB를 설치해서 만드는 것 같은데 이경우 DB생성 위치가 다르다고 생각해야될까요?
그리고 Docker 이미지 위에 Airflow를 만든다고 하더라도 외부(여기서는 사용자 Local PC)에 생성된 DB에도 연결이 가능할 거 같은데, 이번 강의에서 의도하신 환경내에서 실습할 수 있으면 좋을 것 같습니다.
감사합니다 ㅎㅎ