File size: 1,332 Bytes
3bf01d0
 
 
 
78dad04
 
 
 
 
d2248f5
 
 
 
53ad8cf
d2248f5
 
 
 
 
 
 
 
f125394
580fcac
3bf01d0
78dad04
3bf01d0
 
 
 
 
8ee4652
3bf01d0
78dad04
3bf01d0
 
78dad04
 
 
 
c8713c8
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
FROM python:3.12

WORKDIR /code

# Create and activate virtual environment
ENV VIRTUAL_ENV=/opt/venv
RUN python -m venv $VIRTUAL_ENV
ENV PATH="$VIRTUAL_ENV/bin:$PATH"

# Install packages in the virtual environment (fixed syntax)
RUN pip install flask==3.0.0 \
    && pip install openai==0.28.0 \
    && pip install python-dotenv==1.0.0 \
    && pip install google-generativeai>=0.8.3 \
    && pip install pillow==10.1.0 \
    && pip install beautifulsoup4==4.12.2 \
    && pip install joblib==1.3.2 \
    && pip install scipy==1.11.4 \
    && pip install pandas==2.1.3 \
    && pip install scikit-learn==1.5.2 \
    && pip install flask-cors==4.0.0 \
    && pip install "flask[async]"==3.0.0 \
    && pip install gunicorn==21.2.0 \
    && pip install requests

# Copy application files
COPY ./app /code/app
COPY ./run.py /code/run.py
COPY ./config.py /code/config.py
COPY ./precomputed /code/precomputed
COPY ./recipe_dataset.csv /code/recipe_dataset.csv
COPY ./form_data.json /code/form_data.json

# Clean up cache
RUN find /code -type d -name "__pycache__" -exec rm -r {} + 2>/dev/null || true

# Create wsgi.py
RUN echo 'from run import app\n\nif __name__ == "__main__":\n    app.run()' > /code/wsgi.py

# Run with gunicorn
CMD ["gunicorn", "--bind", "0.0.0.0:7860", "--workers", "1", "--timeout", "120", "--preload", "wsgi:app"]