File size: 1,124 Bytes
6303ae6
 
 
 
78536a8
 
 
6303ae6
78536a8
 
 
 
6303ae6
78536a8
6303ae6
78536a8
6303ae6
 
 
 
 
 
 
 
 
78536a8
 
 
6303ae6
78536a8
6303ae6
 
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
# Hugging Face Docker Space image for the Upwork Proposal Strategist.
# Python 3.11 matches the version the app is developed and tested against and
# has prebuilt wheels for every pinned dependency.
FROM python:3.11-slim

WORKDIR /app

RUN apt-get update && apt-get install -y --no-install-recommends \
    build-essential \
    curl \
    && rm -rf /var/lib/apt/lists/*

# Install dependencies first so this layer is cached across code changes.
COPY requirements.txt ./
RUN pip3 install --no-cache-dir -r requirements.txt

# App code. Only what the web app needs at runtime is copied — no desktop
# launchers, tests, sample data, or the bundled local Python runtime.
COPY app/ ./app/
COPY .streamlit/ ./.streamlit/
COPY streamlit_app.py ./

# Force cloud behaviour (file-upload dossier, no local folder paths). HF also
# sets SPACE_ID at runtime, but this makes the intent explicit and portable.
ENV UPWORK_CLOUD=1

EXPOSE 8501

HEALTHCHECK CMD curl --fail http://localhost:8501/_stcore/health || exit 1

ENTRYPOINT ["streamlit", "run", "streamlit_app.py", \
            "--server.port=8501", "--server.address=0.0.0.0"]