Terminal / Dockerfile
Pulka
deploy: backend S766+S-SCHED-SSE baca80f4 — 2026-06-13 16:27 UTC
5aa4883 verified
Raw
History Blame Contribute Delete
1.41 kB
FROM python:3.11-slim
ENV PYTHONUNBUFFERED=1 \
PYTHONDONTWRITEBYTECODE=1 \
PORT=7860 \
FRONTEND_DIST=/home/user/app/static \
PLAYWRIGHT_BROWSERS_PATH=/ms-playwright
WORKDIR /app
RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential curl git nodejs npm \
libnss3 libnspr4 libdbus-1-3 libatk1.0-0 libatk-bridge2.0-0 \
libcups2 libdrm2 libxkbcommon0 libxcomposite1 libxdamage1 \
libxfixes3 libxrandr2 libgbm1 libasound2 \
&& rm -rf /var/lib/apt/lists/*
# hf-sync copia backend/* nella root dello Space — nessun prefisso backend/
COPY requirements.txt /app/requirements.txt
RUN pip install --no-cache-dir -r /app/requirements.txt \
&& playwright install chromium \
&& chmod -R 755 /ms-playwright
# S356: ttyd — terminale web per accesso da iPhone Safari (binario statico, zero dep)
ARG TTYD_VERSION=1.7.7
RUN ARCH=$(uname -m) && \
TTYD_ARCH=$([ "$ARCH" = "aarch64" ] && echo "aarch64" || echo "x86_64") && \
curl -fsSL -o /usr/local/bin/ttyd \
"https://github.com/tsl0922/ttyd/releases/download/${TTYD_VERSION}/ttyd.${TTYD_ARCH}" && \
chmod +x /usr/local/bin/ttyd
RUN useradd -m -u 1000 user
USER user
ENV HOME=/home/user PATH=/home/user/.local/bin:$PATH
WORKDIR /home/user/app
COPY --chown=user . /home/user/app/
EXPOSE 7860
CMD ["sh", "-c", "uvicorn main:app --host 0.0.0.0 --port ${PORT:-7860} --workers 1"]