목차


이번 과제에서는 환경을 준비하고 Docker와 SQL을 연습할 것입니다.

과제 제출 시 GitHub 저장소나 다른 공개 코드 호스팅 사이트의 링크를 포함해야 합니다.

이 저장소는 과제 해결을 위한 코드를 포함해야 합니다.

SQL이나 셸 명령어와 같은 코드 파일이 아닌 형식의 솔루션인 경우, 저장소의 README 파일에 직접 포함시켜 주세요.

Question 1. Docker 첫 실행 이해하기

Run docker with the python:3.12.8 image in an interactive mode, use the entrypoint bash.

이 이미지에서 pip의 버전은 무엇인가요?

~/de-zoomcamp main* ⇡ ❯ docker run -it python:3.12.8-slim bash                                                                                                                              17s de-zoomcamp-py3.12 22:58:21
root@30b77ff5f9ee:/# pip -V
pip 24.3.1 from /usr/local/lib/python3.12/site-packages/pip (python 3.12)

Question 2. Docker 네트워킹과 docker-compose 이해하기

다음 docker-compose.yaml이 주어졌을 때, pgadmin이 postgres 데이터베이스에 연결하기 위해 사용해야 하는 hostnameport는 무엇인가요?

services:
  **db**:
    container_name: **postgres**
    image: postgres:17-alpine
    environment:
      POSTGRES_USER: 'postgres'
      POSTGRES_PASSWORD: 'postgres'
      POSTGRES_DB: 'ny_taxi'
    ports:
      - **'5433:5432'**
    volumes:
      - vol-pgdata:/var/lib/postgresql/data

  pgadmin:
    **container_name: pgadmin**
    image: dpage/pgadmin4:latest
    environment:
      PGADMIN_DEFAULT_EMAIL: "[email protected]"
      PGADMIN_DEFAULT_PASSWORD: "pgadmin"
    **ports:
      - "8080:80"**
    volumes:
      - vol-pgadmin_data:/var/lib/pgadmin

volumes:
  vol-pgdata:
    name: vol-pgdata
  vol-pgadmin_data:
    name: vol-pgadmin_data