23 notes
- 1편Docker의 기본 개념Docker는 환경 차이로 배포가 깨지는 문제를 해결하기 위한 도구다.
- 2편Docker Desktop과 Docker EngineDocker Engine은 Daemon, CLI, API로 구성된 Docker의 실제 본체다.
- 3편Docker 이미지와 컨테이너 기본 실습Docker 이미지는 실행에 필요한 코드와 라이브러리를 담은 템플릿이고, 컨테이너는 이미지를 실행한 인스턴스다.
- 4편Docker Compose 개념Compose는 여러 컨테이너의 구성을 YAML 파일 하나로 선언해 관리하는 도구다.
- 5편Airflow의 Docker Compose 구성Airflow 공식 docker-compose.yaml은 웹서버·스케줄러·워커·DB·큐 등 여러 서비스로 구성된다.
- Git과 GitHubGit은 변경된 내용만 관리하는 비전 관리 도구이며, GitHub는 Git으로 관리한 코드를 저장하는 공간이다.
- GPU 개념과 실전 사용GPU는 CPU와 달리 수천~수만 개의 단순 코어로 동시 연산을 수행하도록 설계된 장치이며, 딥러닝의 행렬 연산에 최적화돼 있다.
- 외부 함수 사용하기Airflow는 자동으로 dags 폴더와 plugins 폴더를 sys.path에 추가한다.
- Airflow & PostgreSQL 구축인프라 환경 구축: 안정적인 서버 운용을 위해 고정 IP를 확보하고 VCN 보안 목록에서 SSH(22), Airflow(8080), DB(5432) 포트를 개방하여 네트워크 기초를 마련한다.
- Airflow 개념 및 작동 원리도커는 앱을 독립적 환경에서 실행시키는 컨테이너화 플랫폼으로, Airflow 설치 방법 중 하나다.
- Airflow 설치 및 초기 설정Mac에 Docker Desktop을 설치한 후, Airflow용 하위 폴더들을 생성한다.
- Airflow 패키지 설치requirements.txt에 설치할 패키지명과 버전을 작성한다.
- Airflow 환경 GitHub 연동Oracle Cloud 서버 내 Airflow 프로젝트를 GitHub와 연동하려면, 서버용 SSH Key를 생성해 GitHub에 등록해야 한다.
- Docker Compose 구조 해석docker-compose는 1개 이상의 도커 컨테이너 생성 시 스크립트 하나(docker-compose.yaml)로 컨테이너들의 설정을 관리하는 목적을 가진다.
- Git 전체 흐름Git은 **로컬(내 컴퓨터)**과 원격(GitHub 등) 저장소를 분리해서 관리하며, 두 저장소를 동기화하는 것이 핵심 흐름이다.
- Linux 기초 명령어Linux 기초 명령어는 디렉토리 이동·조회(pwd, cd, ls), 파일 조작(cp, mv, rm, touch), 압축 해제(tar) 등으로 구성된다.
- op_args와 op_kwargsPythonOperator의 op_args는 list로 작성한다.
- Oracle 서버 구축오라클 클라우드에서 제공하는 평생 무료 ARM 인스턴스를 활용하여 개인 프로젝트용 서버를 구축하는 전체 과정을 다룬다.
- Oracle 클라우드 생성오라클 클라우드는 인스턴스로 가상환경을 생성하고, SSH 키 쌍(public/private)으로 접속하며, public IP를 고정 IP로 변경하는 흐름으로 구성된다.
- Postgres 컨테이너 연동postgres_custom 컨테이너 서비스를 services: 하위에, 관련 volumes 항목도 함께 추가한다.
- Python Operator 기본PythonOperator는 사용자가 만든 함수를 실행시켜주는 오퍼레이터다.
- Python Operator 파라미터부가적인 변수들을 함수에 사용하기 위해 args, kwargs를 활용한다.
- Task 데코레이터Task 데코레이터는 Python 데코레이터의 기능을 airflow task로 활용한다.