Docker에서 Milvus 실행하기(Windows)
이 페이지는 Windows용 도커 데스크톱을 사용하여 Windows에서 Milvus를 실행하는 방법을 설명합니다.
전제 조건
Python 3.8 이상을 설치합니다.
Docker에서 Milvus 실행
Milvus는 Docker 컨테이너로 설치하기 위한 설치 스크립트를 제공합니다. Microsoft Windows에 Docker Desktop을 설치한 후에는 관리자 모드의 PowerShell 또는 Windows 명령 프롬프트와 WSL 2에서 Docker CLI에 액세스할 수 있습니다.
PowerShell 또는 Windows 명령 프롬프트에서
PowerShell 또는 Windows 명령 프롬프트에 더 익숙한 경우, 명령 프롬프트는 다음과 같습니다.
마우스 오른쪽 버튼을 클릭하고 관리자 권한으로 실행을 선택하여 관리자 모드에서 Docker Desktop을 엽니다.
설치 스크립트를 다운로드하여
standalone.bat
에 저장합니다.C:\>Invoke-WebRequest https://github.com/milvus-io/milvus/blob/master/scripts/standalone_embed.bat -OutFile standalone.bat
다운로드한 스크립트를 실행하여 Milvus를 Docker 컨테이너로 시작합니다.
C:\>standalone.bat start Wait for Milvus starting... Start successfully. To change the default Milvus configuration, edit user.yaml and restart the service.
설치 스크립트를 실행한 후
포트 19530에서 밀버스-스탠다드얼론이라는 이름의 도커 컨테이너가 시작되었습니다.
임베드 등드는 동일한 컨테이너에 Milvus와 함께 설치되며 포트 2379에서 서비스됩니다. 해당 구성 파일은 현재 폴더의 embedEtcd.yaml에 매핑됩니다.
Milvus 데이터 볼륨은 현재 폴더의 volumes/milvus에 매핑됩니다.
다음 명령을 사용하여 Milvus 컨테이너와 저장된 데이터를 관리할 수 있습니다.
# Stop Milvus C:\>standalone.bat stop Stop successfully. # Delete Milvus container C:\>standalone.bat delete Delete Milvus container successfully. # Container has been removed. Delete successfully. # Data has been removed.
WSL 2에서
Windows에서 Linux 명령어와 셸 스크립트를 사용하여 Milvus를 시작하려면 WSL 2 명령어를 이미 설치했는지 확인하세요. WSL 2 명령어를 설치하는 방법에 대한 자세한 내용은 이 Microsoft 문서를 참조하세요.
WSL 2를 시작합니다.
C:\>wsl --install Ubuntu already installed. Starting Ubuntu...
설치 스크립트를 다운로드합니다.
# Download the installation script $ curl -sfL https://raw.githubusercontent.com/milvus-io/milvus/master/scripts/standalone_embed.sh -o standalone_embed.sh # Start the Docker container $ bash standalone_embed.sh start
Milvus를 도커 컨테이너로 시작합니다.
$ bash standalone_embed.sh start Wait for Milvus Starting... Start successfully. To change the default Milvus configuration, add your settings to the user.yaml file and then restart the service.
다음 명령어를 사용하여 Milvus 컨테이너와 저장된 데이터를 관리할 수 있습니다.
# Stop Milvus $ bash standalone_embed.sh stop Stop successfully. # Delete Milvus data $ bash standalone_embed.sh stop Delete Milvus container successfully. Delete successfully.
Docker Compose로 Milvus 실행하기
Microsoft Windows에 Docker Desktop을 설치한 후에는 관리자 모드의 PowerShell 또는 Windows 명령 프롬프트에서 Docker CLI에 액세스할 수 있습니다. PowerShell, Windows 명령 프롬프트 또는 WSL 2에서 Docker Compose를 실행하여 Milvus를 시작할 수 있습니다.
PowerShell 또는 Windows 명령 프롬프트에서
마우스 오른쪽 버튼을 클릭하고 관리자 권한으로 실행을 선택하여 관리자 모드에서 Docker 데스크톱을 엽니다.
PowerShell 또는 Windows 명령 프롬프트에서 다음 명령을 실행하여 Milvus Standalone용 Docker Compose 구성 파일을 다운로드하고 Milvus를 시작합니다.
# Download the configuration file and rename it as docker-compose.yml C:\>Invoke-WebRequest https://github.com/milvus-io/milvus/releases/download/v2.4.15/milvus-standalone-docker-compose.yml -OutFile docker-compose.yml # Start Milvus C:\>docker compose up -d Creating milvus-etcd ... done Creating milvus-minio ... done Creating milvus-standalone ... done
네트워크 연결에 따라 Milvus 설치를 위한 이미지를 다운로드하는 데 시간이 걸릴 수 있습니다. 밀버스 스탠드얼론, 밀버스 미니오, 밀버스-etcd라는 이름의 컨테이너가 가동되면 다음과 같은 것을 확인할 수 있습니다.
milvus-etcd 컨테이너는 호스트에 포트를 노출하지 않고 데이터를 현재 폴더의 볼륨/etcd에 매핑합니다.
milvus-minio 컨테이너는 기본 인증 자격 증명을 사용하여 포트 9090 및 9091을 로컬로 서비스하고 데이터를 현재 폴더의 볼륨/minio에 매핑합니다.
밀버스-독립형 컨테이너는 기본 설정으로 포트 19530을 로컬로 서비스하고 해당 데이터를 현재 폴더의 볼륨/milvus에 매핑합니다.
WSL 2가 설치되어 있는 경우 Linux 버전의 Docker Compose 명령을 호출할 수도 있습니다.
WSL 2에서
이 절차는 Docker Compose를 사용하여 Linux 시스템에 Milvus를 설치하는 것과 유사합니다.
WSL 2를 시작합니다.
C:\>wsl --install Ubuntu already installed. Starting Ubuntu...
Milvus 구성 파일을 다운로드합니다.
$ wget https://github.com/milvus-io/milvus/releases/download/v2.4.17/milvus-standalone-docker-compose.yml -O docker-compose.yml
Milvus를 시작합니다.
$ sudo docker compose up -d Creating milvus-etcd ... done Creating milvus-minio ... done Creating milvus-standalone ... done
FAQ
Docker Engine stopped
오류는 어떻게 처리하나요?
컴퓨터가 제대로 구성되지 않은 경우 Windows에 Docker Desktop을 설치한 후 Docker Engine stopped
오류가 발생할 수 있습니다. 이 경우 다음 사항을 확인해야 할 수 있습니다.
가상화가 활성화되어 있는지 확인합니다.
가상화가 활성화되어 있는지 여부는 작업 관리자의 성능 탭에서 확인할 수 있습니다.
작업 관리자의 가상화
가상화가 비활성화되어 있는 경우 마더보드 펌웨어의 BIOS 설정을 확인해야 할 수 있습니다. BIOS 설정에서 가상화를 활성화하는 방법은 마더보드 공급업체에 따라 다릅니다. 예를 들어 ASUS 마더보드의 경우 가상화 활성화에 관한 이 도움말 문서를 참조하세요.
그런 다음 컴퓨터를 다시 시작하고 Hyper-V를 사용하도록 설정해야 합니다. 자세한 내용은 이 Microsoft 문서를 참조하세요.
Docker 데스크톱 서비스가 시작되었는지 확인합니다.
다음 명령을 실행하여 Docker 데스크톱 서비스를 시작할 수 있습니다.
C:\>net start com.docker.service The Docker for Windows Service service is starting. The Docker for Windows Service service was started successfully.
WSL이 제대로 설치되었는지 확인합니다.
다음 명령을 실행하여 WSL 2 명령을 설치하거나 업데이트할 수 있습니다.
C:\>wsl --update Checking for updates. The most recent version of Windows Subsystem for Linux is already installed.
Docker 데몬이 시작되었는지 확인합니다.
Docker Desktop의 설치 디렉터리로 이동하여
.\DockerCli.exe -SwitchDaemon
을 실행하여 Docker Daemon을 시작해야 합니다.C:\>cd "C:\Program Files\Docker\Docker" C:\Program Files\Docker\Docker>.\DockerCli.exe -SwitchDaemon Switching to windows engine: Post "http://ipc/engine/switch": open \\.\pipe\dockerBackendApiServer: The system cannot find the file specified.
관리자 모드에서 Docker Desktop을 시작했는지 확인합니다.
관리자 모드에서 Docker Desktop을 시작했는지 확인합니다. 그러려면 Docker Desktop을 마우스 오른쪽 버튼으로 클릭하고 관리자 권한으로 실행을 선택합니다.
관리자 권한으로 Docker Desktop 시작
Milvus를 배포하는 동안 WSL 관련 문제가 발생하면 어떻게 처리할 수 있나요?
WSL 2에서 Milvus를 실행하는 동안 WSL 관련 문제가 발생한 경우, 다음과 같이 WSL 2 기반 엔진을 사용하도록 Docker Desktop을 구성했는지 확인해야 할 수 있습니다.
설정 > 일반에서"WSL 2 기반 엔진 사용"이 선택되어 있는지 확인합니다.
Docker Desktop 설정에서 WSL 2 기반 엔진 사용
설치된 WSL 2 배포판 중에서 Docker 통합을 사용 설정하려는 배포판을 선택합니다: 설정 > 리소스 > WSL 통합으로 이동합니다.
Docker 데스크톱 설정에서 WSL 2 배포를 선택합니다 .
Milvus 시작 시 Read config failed
라는 볼륨 관련 오류 메시지가 표시되는 경우 어떻게 처리하나요?
Milvus 시작 시 구성 실패 오류 프롬프트 읽기
Milvus 시작 중 "읽기 구성 실패"라는 메시지가 표시되는 오류를 해결하려면 Milvus 컨테이너에 마운트된 볼륨이 올바른지 확인해야 합니다. 볼륨이 컨테이너에 올바르게 마운트된 경우 docker exec
명령어를 사용하여 컨테이너로 이동하여 다음과 같이 /milvus/configs 폴더를 나열할 수 있습니다.
Milvus 설정 파일 나열