基于Dockerfile打包算法镜像
# 使用 NVIDIA CUDA 12.0.1 运行时的 Ubuntu 20.04 基础镜像
FROM nvidia/cuda:11.7.1-runtime-ubuntu20.04
# 更新包列表并安装必要的包
RUN apt-get update && apt-get install -y --no-install-recommends \
python3 \
python3-pip \
python3-venv \
build-essential \
&& rm -rf /var/lib/apt/lists/*
# 创建并激活虚拟环境
RUN python3 -m venv /opt/venv
ENV PATH="/opt/venv/bin:$PATH"
# 安装 PyTorch
RUN pip install torch torchvision torchaudio
# 安装 FastAPI
RUN pip install fastapi uvicorn
# 将代码复制到容器中
COPY . /HotSpots
#工作目录
WORKDIR /HotSpots
# 暴露端口
EXPOSE 8000
# 运行 FastAPI 应用
CMD ["sh","start.sh"]
start.sh 文件
python infer.py
infer.py文件
if __name__ == '__main__':
uvicorn.run("infer:app",host="0.0.0.0",port=8000)