Spaces:
Running
Running
File size: 862 Bytes
c487c6c 5bb0a88 5605ba7 5bb0a88 5605ba7 5bb0a88 5605ba7 5bb0a88 c487c6c 0dd8a54 5605ba7 5bb0a88 c487c6c 5bb0a88 390bec8 a69ec7f 5605ba7 d001047 |
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 |
################ builder ################
FROM python:3.9-slim AS builder
WORKDIR /build
COPY requirements.txt .
RUN pip install --prefix=/install -r requirements.txt
COPY app.py .
RUN python -m compileall -b -f app.py # → app.pyc
RUN tar -czf /build/app.tgz app.pyc # bundle
################ runtime ################
FROM python:3.9-slim
WORKDIR /app
# bring in everything we need
COPY --from=builder /install /usr/local/
COPY --from=builder /build/app.tgz /app/app.tgz
ENV PYTHONUNBUFFERED=1
EXPOSE 7860
# -------- no file, all inline --------
ENTRYPOINT ["bash", "-c", "\
set -euo pipefail; \
mkdir -p /tmp/runner; \
cp /app/app.tgz /tmp/runner/; \
tar -xzf /tmp/runner/app.tgz -C /tmp/runner; \
python /tmp/runner/app.pyc & pid=$!; \
sleep 2; \
rm -f /tmp/runner/app.pyc /tmp/runner/app.tgz; \
wait $pid"] |