Files
IOT_application/Machine-Backend/Dockerfile
2025-10-14 17:27:43 +05:30

36 lines
774 B
Docker

# syntax=docker/dockerfile:1.4
# Builder stage: compile dependencies
FROM python:3.10-alpine AS builder
WORKDIR /app
# Install build dependencies
RUN apk add --no-cache gcc musl-dev python3-dev mariadb-dev libffi-dev openssl-dev
# Copy requirements and install
COPY requirements.txt .
RUN pip install --no-cache-dir --prefix=/install -r requirements.txt
# Copy application code
COPY . .
# Final stage: minimal runtime image
FROM python:3.10-alpine AS final
WORKDIR /app
# Copy installed packages from builder
COPY --from=builder /install /usr/local
# Copy app code
COPY --from=builder /app /app
# Set production environment variables
ENV FLASK_ENV=production
ENV FLASK_APP=run.py
ENV FLASK_RUN_HOST=0.0.0.0
ENV FLASK_RUN_PORT=5000
EXPOSE 5000
CMD ["flask", "run"]