TTSAM / Dockerfile.local
jimmy60504's picture
add local development scripts and Dockerfile for TTSAM environment setup
7836a1c
# syntax=docker/dockerfile:1
FROM python:3.10-slim
ENV PYTHONDONTWRITEBYTECODE=1 \
PYTHONUNBUFFERED=1 \
PIP_NO_CACHE_DIR=1 \
GRADIO_SERVER_PORT=7860 \
GRADIO_SERVER_NAME=0.0.0.0 \
HOME=/home/user
# 建立非 root 使用者(與 HF Spaces 一致)
RUN useradd -m -u 1000 user
# 基本系統套件與科學計算依賴
RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential \
libhdf5-dev \
libnetcdf-dev \
libopenblas-dev \
liblapack-dev \
git \
&& rm -rf /var/lib/apt/lists/*
# 切換到使用者目錄
WORKDIR $HOME/app
# 只複製 requirements.txt 並安裝
COPY --chown=user:user requirements.txt .
RUN pip install --upgrade pip && pip install -r requirements.txt
# 切換到非 root 使用者
USER user
EXPOSE 7860
# 預設執行命令(可被 docker run 覆蓋)
CMD ["python", "app.py"]