Dedicated docker-compose.yml for gpu deployment

This commit is contained in:
RYDE-WORK 2026-01-26 11:11:52 +08:00
parent 3cce4c9373
commit c225fc67a7
2 changed files with 54 additions and 11 deletions

54
docker-compose-gpu.yml Normal file
View File

@ -0,0 +1,54 @@
services:
# FastAPI 后端服务
api:
build:
context: .
dockerfile: Dockerfile
target: api
container_name: lnp-api
environment:
- MODEL_PATH=/app/models/final/model.pt
volumes:
# 挂载模型目录以便更新模型
- ./models/final:/app/models/final:ro
- ./models/mpnn:/app/models/mpnn:ro
restart: unless-stopped
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000/"]
interval: 30s
timeout: 10s
retries: 3
start_period: 60s
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: 1
capabilities: [gpu]
# Streamlit 前端服务
streamlit:
build:
context: .
dockerfile: Dockerfile
target: streamlit
container_name: lnp-streamlit
ports:
- "8501:8501"
environment:
- API_URL=http://api:8000
depends_on:
api:
condition: service_started
restart: unless-stopped
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8501/_stcore/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 30s
networks:
default:
name: lnp-network

View File

@ -6,8 +6,6 @@ services:
dockerfile: Dockerfile dockerfile: Dockerfile
target: api target: api
container_name: lnp-api container_name: lnp-api
# ports:
# - "8000:8000"
environment: environment:
- MODEL_PATH=/app/models/final/model.pt - MODEL_PATH=/app/models/final/model.pt
- DEVICE=cpu - DEVICE=cpu
@ -22,14 +20,6 @@ services:
timeout: 10s timeout: 10s
retries: 3 retries: 3
start_period: 60s start_period: 60s
# 如果有 NVIDIA GPU取消下面的注释
# deploy:
# resources:
# reservations:
# devices:
# - driver: nvidia
# count: 1
# capabilities: [gpu]
# Streamlit 前端服务 # Streamlit 前端服务
streamlit: streamlit:
@ -41,7 +31,6 @@ services:
ports: ports:
- "8501:8501" - "8501:8501"
environment: environment:
# 连接到 API 服务(使用 Docker 内部网络)
- API_URL=http://api:8000 - API_URL=http://api:8000
depends_on: depends_on:
api: api: