langfast2api / Dockerfile
smgc's picture
Create Dockerfile
c39315e verified
# /Dockerfile
FROM python:3.10-slim
# 运行时设置
ENV PYTHONDONTWRITEBYTECODE=1
ENV PYTHONUNBUFFERED=1
# 可配置的仓库与版本(分支/标签/提交)
ARG REPO_URL=https://github.com/lzA6/langfast-2api.git
ARG REPO_REF=main
# 基础依赖(git),并尽量保持镜像精简
RUN apt-get update && \
apt-get install -y --no-install-recommends git && \
rm -rf /var/lib/apt/lists/*
# 代码目录
WORKDIR /app
# 克隆目标版本(浅克隆)
RUN git clone --depth=1 --branch "${REPO_REF}" "${REPO_URL}" /app
# 升级 pip 并安装依赖(若项目包含 requirements.txt)
RUN pip install --no-cache-dir --upgrade pip && \
if [ -f requirements.txt ]; then pip install --no-cache-dir -r requirements.txt; fi
# 创建非 root 用户
RUN useradd --create-home appuser && \
chown -R appuser:appuser /app
USER appuser
EXPOSE 7860
# 根据仓库中的应用入口调整这里的模块路径(假设为 main:app)
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "7860", "--workers", "1"]