From 819de4322dd9efdd95827146ad103c8a701d6ef1 Mon Sep 17 00:00:00 2001 From: mukeshs Date: Tue, 14 Oct 2025 17:52:38 +0530 Subject: [PATCH] first commit --- Machine-Backend/Dockerfile | 26 ++++---------------------- Machine-Backend/requirements.txt | 3 ++- 2 files changed, 6 insertions(+), 23 deletions(-) diff --git a/Machine-Backend/Dockerfile b/Machine-Backend/Dockerfile index d8faa83..e269680 100644 --- a/Machine-Backend/Dockerfile +++ b/Machine-Backend/Dockerfile @@ -1,31 +1,12 @@ -# syntax=docker/dockerfile:1.4 -# Builder stage: compile dependencies -FROM python:3.10-alpine AS builder - -WORKDIR /app - -# Install build dependencies -RUN sed -i 's/dl-cdn.alpinelinux.org/mirror.kakao.com/g' /etc/apk/repositories \ - && 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 only installed dependencies + app COPY --from=builder /install /usr/local -# Copy app code COPY --from=builder /app /app -# Set production environment variables +# Production ENV ENV FLASK_ENV=production ENV FLASK_APP=run.py ENV FLASK_RUN_HOST=0.0.0.0 @@ -33,4 +14,5 @@ ENV FLASK_RUN_PORT=5000 EXPOSE 5000 -CMD ["flask", "run"] +# Use Gunicorn for production +CMD ["gunicorn", "--bind", "0.0.0.0:5000", "run:app"] diff --git a/Machine-Backend/requirements.txt b/Machine-Backend/requirements.txt index a60173a..0809383 100644 --- a/Machine-Backend/requirements.txt +++ b/Machine-Backend/requirements.txt @@ -2,4 +2,5 @@ Flask Flask-CORS Flask-SQLAlchemy python-dotenv -pymysql \ No newline at end of file +pymysql +gunicorn \ No newline at end of file