[
  {
    "courseSlug": "tool-docker",
    "question": "Docker Desktop 왼쪽 메뉴의 세 탭을 코스의 비유로 짝지은 것 중 옳은 것은?",
    "option1": "Containers=설계도 창고, Images=돌아가는 기계, Volumes=데이터 금고",
    "option2": "Containers=데이터 금고, Images=돌아가는 기계, Volumes=설계도 창고",
    "option3": "Containers=돌아가는 기계, Images=설계도 창고, Volumes=데이터 금고",
    "option4": "Containers=돌아가는 기계, Images=데이터 금고, Volumes=설계도 창고",
    "answerIndex": 2,
    "explanation": "섹션 2에서 이미지는 설계도(붕어빵 틀), 컨테이너는 그 틀로 찍어낸 지금 돌아가는 기계, 볼륨은 지워지면 안 되는 데이터를 보관하는 금고에 비유했습니다."
  },
  {
    "courseSlug": "tool-docker",
    "question": "Windows에 Docker Desktop을 설치할 때 WSL2를 함께 켜는 이유로 코스가 설명한 것은?",
    "option1": "Windows 보안 업데이트를 컨테이너에도 자동으로 적용하기 위해서",
    "option2": "컨테이너 기술이 리눅스 기능을 쓰므로, Windows 안에 작은 리눅스 방을 만들어 그 안에서 엔진을 돌리기 위해서",
    "option3": "Docker Desktop의 GUI 화면을 그리는 그래픽 가속이 WSL2에서만 지원되기 때문에",
    "option4": "여러 PC의 컨테이너를 하나의 네트워크로 묶어 주는 기능이 WSL2에 들어 있어서",
    "answerIndex": 1,
    "explanation": "섹션 1의 핵심 — Docker는 리눅스에서 태어난 기술이라, Windows에서는 WSL2라는 '리눅스 방'을 만들고 그 안에서 진짜 엔진을 돌립니다."
  },
  {
    "courseSlug": "tool-docker",
    "question": "docker ps와 docker ps -a의 차이, 그리고 Docker Desktop Containers 탭의 기본 동작에 대한 설명으로 옳은 것은?",
    "option1": "docker ps는 멈춘 컨테이너까지 보여 주고, Containers 탭은 실행 중인 것만 보여 준다",
    "option2": "둘은 같은 결과를 내며, Containers 탭은 이미지 목록까지 한 화면에 같이 보여 준다",
    "option3": "docker ps -a는 볼륨 목록까지 함께 보여 주고, Containers 탭은 docker ps와 똑같다",
    "option4": "docker ps는 지금 도는 것만, docker ps -a는 멈춘 것까지 보여 주며 Containers 탭은 -a 쪽에 가깝다",
    "answerIndex": 3,
    "explanation": "섹션 4에서 docker ps는 실행 중인 컨테이너만, -a는 멈춘 것까지 전부 보여 주고, Desktop의 Containers 탭은 멈춘 컨테이너도 회색으로 표시하는 -a 쪽이라고 설명합니다."
  },
  {
    "courseSlug": "tool-docker",
    "question": "docker system prune에 --volumes 옵션을 붙일 때 특히 조심해야 하는 이유는?",
    "option1": "안 쓰는 볼륨까지 지워지는데, 볼륨에는 DB 데이터처럼 잃으면 안 되는 것이 들어 있을 수 있어서",
    "option2": "실행 중인 컨테이너까지 강제로 중지시킨 뒤 목록에서 전부 삭제해 버려서",
    "option3": "받아 둔 모든 이미지가 삭제되어 다시 다운로드하는 데 시간이 오래 걸려서",
    "option4": "WSL2 설정 파일(.wslconfig)까지 초기화되어 메모리 상한선이 사라져서",
    "answerIndex": 0,
    "explanation": "섹션 6의 경고 — prune 자체는 안전한 편이지만 --volumes를 붙이면 안 쓰는 볼륨(DB 데이터가 들어 있을 수 있는 금고)까지 지우므로 확인 문구를 꼭 읽어야 합니다."
  },
  {
    "courseSlug": "tool-docker",
    "question": "아침에 백엔드(Spring Boot)를 실행했더니 DB 연결 에러가 났다. 코스의 아침 루틴대로라면 가장 먼저 해야 할 일은?",
    "option1": "백엔드 코드의 DB 접속 설정 파일을 열어 오타부터 찾아본다",
    "option2": "docker system prune으로 도커를 한 번 정리한 뒤 백엔드를 다시 실행한다",
    "option3": "docker compose ps(또는 Containers 탭)로 DB 컨테이너가 Up 상태인지부터 확인한다",
    "option4": "PC를 재부팅해서 WSL2 메모리를 비운 다음 백엔드를 다시 시도한다",
    "answerIndex": 2,
    "explanation": "섹션 5에서 DB 연결 에러가 나면 '코드 문제인가?' 고민하기 전에 docker compose up -d / ps 루틴으로 DB가 살아 있는지부터 확인하는 것이 순서라고 강조합니다."
  }
]
