realtime / Dockerfile
teganmosi
Deploy Stage 2 decoupled Event-Driven Conversational Runtime architecture
deea75c
Raw
History Blame Contribute Delete
1.06 kB
FROM python:3.10-slim
# Install system build dependencies
RUN apt-get update && apt-get install -y \
build-essential \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /app
# Upgrade pip and install PyTorch CPU first to cache it (saves 2.5GB download and build time)
RUN pip install --no-cache-dir --upgrade pip && \
pip install --no-cache-dir torch --index-url https://download.pytorch.org/whl/cpu
# Copy python packaging and source files
COPY ./pyproject.toml ./pyproject.toml
COPY ./README.md ./README.md
COPY ./pocket_tts ./pocket_tts
COPY ./s2s_server.py ./s2s_server.py
COPY ./models ./models
COPY ./queues ./queues
COPY ./runtime ./runtime
COPY ./services ./services
COPY ./middleware ./middleware
# Install dependencies and local pocket-tts package
RUN pip install --no-cache-dir -e . && \
pip install --no-cache-dir openai groq websockets uvicorn python-dotenv
# Expose ports for both local, Render, and Hugging Face Spaces (which uses 7860)
ENV PORT=7860
EXPOSE 8000
EXPOSE 7860
# Run the S2S server
CMD ["python", "s2s_server.py"]