Windows 환경에서 Docker 설치 가이드

목차

1. 시스템 요구사항 확인

Docker Desktop을 설치하기 전에 시스템이 다음 요구사항을 충족하는지 확인하세요.

최소 요구사항

하드웨어 가상화 확인 방법

1

작업 관리자를 열고 성능 탭으로 이동합니다.

2

CPU 항목을 선택하고 '가상화'가 '사용'으로 표시되어 있는지 확인합니다.

주의사항

하드웨어 가상화가 비활성화되어 있다면, BIOS/UEFI 설정으로 들어가서 활성화해야 합니다. 이 과정은 컴퓨터 제조사 및 모델에 따라 다를 수 있습니다.

2. WSL 2 설치 및 구성

Docker Desktop은 Windows Subsystem for Linux 2 (WSL 2)를 사용하여 성능을 향상시킵니다. WSL 2를 설치하고 기본 버전으로 설정해야 합니다.

WSL 2 설치하기

1

관리자 권한으로 PowerShell을 실행합니다.

2

Windows 기능 사용/사용 안 함 작업을 위해 다음 명령어를 실행합니다:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
3

가상 머신 플랫폼 기능을 활성화합니다:

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
4

컴퓨터를 재시작합니다.

5

WSL 2 Linux 커널 업데이트 패키지를 다운로드하고 설치합니다:

WSL2 Linux 커널 업데이트 패키지

6

WSL 2를 기본 버전으로 설정합니다:

wsl --set-default-version 2

Linux 배포판 설치

Microsoft Store에서 원하는 Linux 배포판(예: Ubuntu)을 설치할 수 있습니다. 또는 PowerShell에서 직접 설치할 수도 있습니다:

wsl --install -d Ubuntu

이 명령어는 Ubuntu를 다운로드하고 설치합니다. 설치 후 사용자 이름과 비밀번호를 설정하라는 메시지가 표시됩니다.

Windows 11 또는 Windows 10 최신 버전에서는 wsl --install 명령어만으로 모든 필수 구성 요소와 함께 기본 Ubuntu 배포판이 설치됩니다.

3. Docker Desktop 다운로드 및 설치

WSL 2가 성공적으로 설치되면 Docker Desktop을 다운로드하고 설치할 수 있습니다.

1

Docker Desktop 설치 파일을 다운로드합니다:

Docker Desktop 다운로드

2

다운로드한 설치 파일을 더블 클릭하여 설치를 시작합니다.

3

설치 옵션에서 다음 항목이 선택되어 있는지 확인합니다:

  • "WSL 2 기반 엔진 사용"
  • "바탕 화면에 Docker Desktop 아이콘 추가"
4

"확인" 버튼을 클릭하여 설치를 진행합니다.

5

설치가 완료되면 "닫기" 버튼을 클릭합니다. Docker Desktop이 자동으로 시작됩니다.

6

Docker 이용 약관에 동의하고 필요에 따라 설정을 구성합니다.

주의사항

설치 중 "WSL 2 설치가 불완전합니다" 오류가 발생하면, WSL 2 설치 단계를 다시 확인하고 컴퓨터를 재시작한 후 다시 시도하세요.

4. Docker 설정 최적화

Docker Desktop 성능을 최적화하기 위해 다음 설정을 구성할 수 있습니다.

1

Docker Desktop을 실행하고 오른쪽 상단의 설정 아이콘(⚙️)을 클릭합니다.

2

리소스 탭에서 다음 설정을 조정합니다:

  • CPU: 사용 가능한 CPU 코어의 절반 이상 할당
  • 메모리: 최소 4GB (작업 부하에 따라 조정)
  • 스왑: 2GB 이상
  • 디스크 이미지 크기: 최소 60GB
3

WSL 통합을 구성합니다 (Resources > WSL Integration):

  • "WSL 통합 사용" 확인
  • Docker를 사용할 Linux 배포판 선택 (설치한 Ubuntu 등)
4

설정이 완료되면 "Apply & Restart" 버튼을 클릭하여 변경 사항을 적용합니다.

시스템 성능에 따라 리소스 할당을 조정하세요. 더 많은 리소스를 할당할수록 Docker 컨테이너 성능이 향상되지만, 호스트 시스템의 가용 리소스는 감소합니다.

5. 기본 Docker 명령어 테스트

Docker가 올바르게 설치되었는지 확인하기 위해 몇 가지 기본 명령어를 테스트해 보겠습니다.

터미널에서 Docker 테스트

PowerShell 또는 명령 프롬프트를 열고 다음 명령어를 실행합니다:

Docker 버전 확인:

docker --version

예상 출력: Docker version 24.0.2, build cb74dfc (버전은 다를 수 있음)

Docker 시스템 정보 확인:

docker info

Hello World 컨테이너 실행:

docker run hello-world

이 명령어는 Docker Hub에서 hello-world 이미지를 다운로드하고 컨테이너를 실행합니다. 성공적으로 실행되면 환영 메시지가 표시됩니다.

WSL 2에서 Docker 테스트

WSL 2 터미널에서도 Docker 명령어가 작동하는지 확인해 보세요:

  1. 시작 메뉴에서 "Ubuntu"를 검색하여 WSL 터미널을 실행합니다.
  2. 다음 명령어를 실행합니다:
docker run -it ubuntu bash

이 명령어는 Ubuntu 컨테이너를 실행하고 bash 셸을 제공합니다. exit 명령으로 컨테이너를 종료할 수 있습니다.

6. Qdrant Docker 이미지 실행방법

이제 Docker가 올바르게、 설치되었으므로 Qdrant를 Docker 컨테이너로 실행해 보겠습니다.

기본 Qdrant 컨테이너 실행

다음 명령어로 Qdrant 컨테이너를 실행합니다:

docker run -p 6333:6333 -p 6334:6334 qdrant/qdrant

이 명령어는 Qdrant 이미지를 다운로드하고 6333, 6334 포트를 호스트에 매핑하여 컨테이너를 시작합니다.

데이터 지속성을 위한 볼륨 마운트

Qdrant 데이터를 호스트 시스템에 저장하려면 볼륨을 마운트합니다:

docker run -p 6333:6333 -p 6334:6334 -v qdrant_storage:/qdrant/storage qdrant/qdrant

컨테이너 백그라운드에서 실행

Qdrant 컨테이너를 백그라운드에서 실행하려면:

docker run -d -p 6333:6333 -p 6334:6334 -v qdrant_storage:/qdrant/storage qdrant/qdrant

Qdrant 컨테이너 설정 구성

사용자 정의 설정 파일로 Qdrant를 실행하려면:

  1. 로컬 시스템에 config.yaml 파일을 생성합니다.
  2. 다음 명령어로 컨테이너를 실행합니다:
docker run -d -p 6333:6333 -p 6334:6334 -v $(pwd)/config.yaml:/qdrant/config/production.yaml -v qdrant_storage:/qdrant/storage qdrant/qdrant

PowerShell에서는 $(pwd) 대신 ${PWD}를 사용합니다:

docker run -d -p 6333:6333 -p 6334:6334 -v ${PWD}/config.yaml:/qdrant/config/production.yaml -v qdrant_storage:/qdrant/storage qdrant/qdrant

Qdrant 컨테이너 테스트

Qdrant가 제대로 실행되고 있는지 확인하려면 웹 브라우저에서 다음 URL로 접속합니다:

http://localhost:6333/dashboard

또는 API를 통해 상태를 확인할 수 있습니다:

curl http://localhost:6333/

예상 응답:

{
  "title": "Qdrant - Vector Search Engine",
  "version": "1.x.x"
}

컨테이너 ID를 확인하려면 docker ps 명령어를 사용하세요. 컨테이너를 중지하려면 docker stop 컨테이너ID를 실행합니다.

7. 문제 해결 가이드

Docker 설치나 Qdrant 실행 중 발생할 수 있는 일반적인 문제와 해결 방법입니다.

Docker Desktop이 시작되지 않는 경우

  1. WSL 2가 올바르게 설치되어 있는지 확인합니다: wsl -l -v
  2. 하드웨어 가상화가 활성화되어 있는지 확인합니다.
  3. Windows 업데이트가 최신 상태인지 확인합니다.
  4. Docker Desktop을 재설치합니다.

WSL 2 오류 메시지가 표시되는 경우

  1. Linux 커널 업데이트 패키지를 다시 설치합니다.
  2. 다음 명령어로 WSL을 업데이트합니다: wsl --update

포트 충돌 문제

Qdrant 포트(6333, 6334)가 이미 사용 중인 경우:

  1. 사용 중인 포트를 확인합니다: netstat -ano | findstr 6333
  2. 다른 포트를 사용하여 Qdrant를 실행합니다: docker run -p 7333:6333 -p 7334:6334 qdrant/qdrant

Docker 컨테이너가 정상적으로 종료되지 않는 경우

  1. 실행 중인 컨테이너 목록 확인: docker ps -a
  2. 강제 종료: docker rm -f 컨테이너ID

WSL 2 메모리 사용량이 높은 경우

WSL 2가 시스템 메모리를 너무 많이 사용하는 경우, 다음과 같이 메모리 제한을 설정할 수 있습니다:

  1. 사용자 홈 디렉토리에 .wslconfig 파일을 생성합니다.
  2. 다음 내용을 추가합니다:
[wsl2]
memory=4GB
processors=2
  • WSL을 재시작합니다: wsl --shutdown
  • Docker 명령어가 작동하지 않는 경우

    1. Docker Desktop이 실행 중인지 확인합니다.
    2. Docker 서비스를 재시작합니다: Restart-Service *docker*
    3. 시스템을 재부팅합니다.

    중요

    문제 해결에 어려움을 겪는 경우 Docker 공식 문서Qdrant 문서를 참조하세요.

    결론

    이 가이드를 통해 Windows 환경에서 Docker를 설치하고 Qdrant 벡터 데이터베이스를 실행하는 방법을 배웠습니다. 이제 Qdrant와 LangChain을 연계한 실습을 진행할 준비가 되었습니다.

    Docker와 Qdrant를 사용하여 벡터 검색, 유사성 검색, 메타데이터 필터링 등 다양한 기능을 탐색해 보세요.

    추가 질문이나 문제가 있으면 다음 리소스를 참조하세요: