36 lines
795 B
Text
36 lines
795 B
Text
|
|
FROM viktorbarzin/audiblez:latest
|
||
|
|
|
||
|
|
# Install Node.js for building frontend
|
||
|
|
RUN apt-get update && \
|
||
|
|
apt-get install -y curl && \
|
||
|
|
curl -fsSL https://deb.nodesource.com/setup_22.x | bash - && \
|
||
|
|
apt-get install -y nodejs && \
|
||
|
|
apt-get clean && \
|
||
|
|
rm -rf /var/lib/apt/lists/*
|
||
|
|
|
||
|
|
WORKDIR /app
|
||
|
|
|
||
|
|
# Build frontend
|
||
|
|
COPY frontend/package.json frontend/package-lock.json* ./frontend/
|
||
|
|
WORKDIR /app/frontend
|
||
|
|
RUN npm install
|
||
|
|
|
||
|
|
COPY frontend/ ./
|
||
|
|
RUN npm run build
|
||
|
|
|
||
|
|
# Install backend dependencies
|
||
|
|
WORKDIR /app/backend
|
||
|
|
COPY backend/requirements.txt ./
|
||
|
|
RUN pip install --no-cache-dir --break-system-packages -r requirements.txt
|
||
|
|
|
||
|
|
COPY backend/ ./
|
||
|
|
|
||
|
|
# Copy voice samples
|
||
|
|
COPY samples/ /app/samples/
|
||
|
|
|
||
|
|
WORKDIR /app/backend
|
||
|
|
|
||
|
|
EXPOSE 8000
|
||
|
|
|
||
|
|
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8000"]
|