Docker 컨테이너 배포
Docker를 사용하는 것은 프로덕션 환경, NAS 장비 및 프라이빗 클라우드 서버에서 OneASR을 구동하는 가장 권장되는 방법입니다.
1. docker run 명령어로 빠른 실행
NVIDIA GPU 하드웨어 가속 모드
호스트 머신에 NVIDIA Container Toolkit이 설치되어 있는지 확인합니다:
bash
docker run -d \
--name oneasr-gateway \
--gpus all \
-p 8000:8000 \
-v $(pwd)/models:/app/models \
-v $(pwd)/config.yaml:/app/config.yaml \
--restart unless-stopped \
codeandxv/oneasr:latestCPU 모드 (외장 그래픽 카드 불필요)
bash
docker run -d \
--name oneasr-gateway \
-p 8000:8000 \
-v $(pwd)/models:/app/models \
-v $(pwd)/config.yaml:/app/config.yaml \
--restart unless-stopped \
codeandxv/oneasr:latest2. Docker Compose 사용 (권장)
프로젝트 작업 디렉터리에 docker-compose.yml 파일을 생성합니다:
yaml
version: '3.8'
services:
oneasr:
image: codeandxv/oneasr:latest
container_name: oneasr-gateway
restart: unless-stopped
ports:
- "8000:8000"
environment:
- ONEASR_API_KEY=sk-oneasr-v1-p_L3kXm9QZ8sT2vA4wE7rY1u
- WORKERS=2
volumes:
- ./models:/app/models
- ./config.yaml:/app/config.yaml
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: all
capabilities: [gpu]컨테이너 서비스 시작:
bash
docker compose up -d실행 로그 확인:
bash
docker compose logs -f oneasr3. 웹 콘솔 및 API 문서 접속
서비스가 정상적으로 실행되면 브라우저에서 바로 접속할 수 있습니다:
- 시각화 웹 대시보드:
http://localhost:8000 - Swagger 대화형 API 문서:
http://localhost:8000/docs - 헬스 체크 엔드포인트:
http://localhost:8000/api/v1/health
