newserver / Dockerfile
APINOW-service's picture
Update Dockerfile
842a13d verified
# ---- Base image ----
FROM python:3.10-slim
# ---- Environment ----
ENV PYTHONUNBUFFERED=1
ENV PYTHONDONTWRITEBYTECODE=1
# Hugging Face Spaces expects port 7860
ENV PORT=7860
# ---- System deps (minimal) ----
RUN apt-get update && apt-get install -y \
build-essential \
&& rm -rf /var/lib/apt/lists/*
# Install system dependencies
RUN apt-get update && apt-get install -y \
curl \
ca-certificates \
# lklklkl
&& rm -rf /var/lib/apt/lists/*
# Install cloudflared (NO sudo, NO service install)
RUN curl -fsSL https://pkg.cloudflare.com/cloudflare-public-v2.gpg \
| tee /usr/share/keyrings/cloudflare-public-v2.gpg >/dev/null && \
echo "deb [signed-by=/usr/share/keyrings/cloudflare-public-v2.gpg] https://pkg.cloudflare.com/cloudflared any main" \
| tee /etc/apt/sources.list.d/cloudflared.list && \
apt-get update && \
apt-get install -y cloudflared && \
rm -rf /var/lib/apt/lists/*
# ---- Workdir ----
WORKDIR /app
# ---- Copy requirements first (for layer caching) ----
COPY requirements.txt .
# ---- Install Python deps ----
RUN pip install --no-cache-dir -r requirements.txt
# ---- Copy app ----
COPY . .
# ---- Expose HF port ----
EXPOSE 7860
# ---- Run server ----
CMD cloudflared tunnel run --token $CLOUDFLARED_TOKEN & python app.py