推荐配置
驱动 >=535.104.05
TensorFlow 2.15.0 + CUDA 12.2
生成经过验证的生产级 Dockerfile 配置
配置摘要
框架
TensorFlow 2.15.0
CUDA 版本
12.2
Python 支持
3.9, 3.10, 3.11
最低驱动
>=535.104.05
说明: 需要系统CUDA,不支持pip CUDA
安装命令
pip install tensorflow==2.15.0 TensorFlow 2.15.0 新特性
- 最后一个提供打包 CUDA 库选项的版本
- 成熟的 tf.keras API
- 广泛的第三方库兼容性
最佳用途
适用场景
- 重度依赖 tf.keras 的项目
- 与旧版 TF 生态工具的兼容
- 渐进式迁移到新版本
CUDA 12.2 优势
- 稳定的生产部署
- 广泛的 GPU 兼容性
- GCP Cloud Run 部署
生成 Dockerfile
配置选项
本地 GPU 或 CPU 环境
需要系统CUDA,不支持pip CUDA
需要 NVIDIA 驱动版本 >=535.104.05
Dockerfile
1# syntax=docker/dockerfile:12# ^ Required for BuildKit cache mounts and advanced features34# Generated by DockerFit (https://tools.eastondev.com/docker)5# TENSORFLOW 2.15.0 + CUDA 12.2 | Python 3.116# Multi-stage build for optimized image size78# ==============================================================================9# Stage 1: Builder - Install dependencies and compile10# ==============================================================================11FROM nvidia/cuda:12.2.0-cudnn8-devel-ubuntu22.04 AS builder1213# Build arguments14ARG DEBIAN_FRONTEND=noninteractive1516# Environment variables17ENV PYTHONUNBUFFERED=118ENV PYTHONDONTWRITEBYTECODE=119ENV TORCH_CUDA_ARCH_LIST="7.5;8.0;8.6"2021# Install Python 3.11 from deadsnakes PPA (Ubuntu 22.04)22RUN apt-get update && apt-get install -y --no-install-recommends \23 software-properties-common \24 && add-apt-repository -y ppa:deadsnakes/ppa \25 && apt-get update && apt-get install -y --no-install-recommends \26 python3.11 \27 python3.11-venv \28 python3.11-dev \29 build-essential \30 git31 && rm -rf /var/lib/apt/lists/*3233# Create virtual environment34ENV VIRTUAL_ENV=/opt/venv35RUN python3.11 -m venv $VIRTUAL_ENV36ENV PATH="$VIRTUAL_ENV/bin:$PATH"3738# Upgrade pip39RUN pip install --no-cache-dir --upgrade pip setuptools wheel4041# Install TensorFlow with BuildKit cache42RUN --mount=type=cache,target=/root/.cache/pip \43 pip install tensorflow==2.15.04445# Install project dependencies46COPY requirements.txt .47RUN --mount=type=cache,target=/root/.cache/pip \48 pip install -r requirements.txt4950# ==============================================================================51# Stage 2: Runtime - Minimal production image52# ==============================================================================53FROM nvidia/cuda:12.2.0-cudnn8-runtime-ubuntu22.04 AS runtime5455# Labels56LABEL maintainer="Generated by DockerFit"57LABEL version="2.15.0"58LABEL description="TENSORFLOW 2.15.0 + CUDA 12.2"5960# Environment variables61ENV PYTHONUNBUFFERED=162ENV PYTHONDONTWRITEBYTECODE=163ENV NVIDIA_VISIBLE_DEVICES=all64ENV NVIDIA_DRIVER_CAPABILITIES=compute,utility6566# Install Python 3.11 runtime from deadsnakes PPA (Ubuntu 22.04)67RUN apt-get update && apt-get install -y --no-install-recommends \68 software-properties-common \69 && add-apt-repository -y ppa:deadsnakes/ppa \70 && apt-get update && apt-get install -y --no-install-recommends \71 python3.11 \72 libgomp173 && apt-get remove -y software-properties-common \74 && apt-get autoremove -y \75 && rm -rf /var/lib/apt/lists/*7677# Create non-root user for security78ARG USERNAME=appuser79ARG USER_UID=100080ARG USER_GID=$USER_UID81RUN groupadd --gid $USER_GID $USERNAME \82 && useradd --uid $USER_UID --gid $USER_GID -m $USERNAME8384# Copy virtual environment from builder85COPY --from=builder --chown=$USERNAME:$USERNAME /opt/venv /opt/venv86ENV VIRTUAL_ENV=/opt/venv87ENV PATH="$VIRTUAL_ENV/bin:$PATH"8889# Set working directory90WORKDIR /app9192# Copy application code93COPY --chown=$USERNAME:$USERNAME . .9495# Switch to non-root user96USER $USERNAME9798# Expose port99EXPOSE 8000100101# Default command102CMD ["python", "main.py"]
🚀 推荐部署
高性能 GPU 与 AI 云服务器
为您的 Docker 容器提供强大的 NVIDIA 算力支持,支持 A100/H100,全球 32 个机房可选。
- 支持 NVIDIA A100/H100 GPU 实例
- 按小时计费,测试成本低至 $0.004/h
- 全球 32+ 数据中心,极低访问延迟
- 一键运行容器化应用与裸金属服务器
常见问题
需要什么版本的 NVIDIA 驱动?
TensorFlow 2.15.0 + CUDA 12.2 需要 NVIDIA 驱动版本 >=535.104.05 或更高。
运行 nvidia-smi 检查当前驱动版本。
如何安装支持 CUDA 的 TensorFlow?
TensorFlow 2.15.0 使用以下安装命令:
pip install tensorflow==2.15.0 从 TensorFlow 2.15+ 开始,CUDA 库通过 tensorflow[and-cuda] 打包。
如何验证容器中的 GPU 访问?
构建镜像后运行:
docker run --gpus all your-image python -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))"
将显示可用的 GPU 设备列表。