# ============================================================ # 基础镜像:NVIDIA TensorRT 23.08 # 内含:CUDA 12.1.1 | cuDNN 8.9.3 | TensorRT 8.6.1.6 | Python 3.10 # ============================================================ FROM nvcr.io/nvidia/tensorrt:23.08-py3 LABEL maintainer="AI Edge Architecture Team" LABEL description="Edge AI Inference Service - YOLOv11n + TensorRT" # 设置时区 ENV TZ=Asia/Shanghai RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone # 系统依赖(视频解码、OpenCV 运行时) RUN apt-get update && apt-get install -y --no-install-recommends \ ffmpeg \ libsm6 \ libxext6 \ libgl1-mesa-glx \ && rm -rf /var/lib/apt/lists/* WORKDIR /app # 先复制依赖文件,利用 Docker 层缓存 COPY requirements.txt . # 安装 PyTorch(CUDA 12.1 版本)+ 其余依赖 RUN pip install --no-cache-dir \ torch==2.1.2 torchvision==0.16.2 \ --index-url https://download.pytorch.org/whl/cu121 \ && pip install --no-cache-dir -r requirements.txt # 复制项目代码 COPY __init__.py . COPY main.py . COPY algorithms.py . COPY build_engine.py . COPY config/ ./config/ COPY core/ ./core/ COPY utils/ ./utils/ # 模型和数据通过卷挂载,不打入镜像 # -v /path/to/models:/app/models # -v /path/to/data:/app/data # 日志目录 RUN mkdir -p /app/logs /app/data EXPOSE 9001 CMD ["python", "main.py"]