「镜像分层与依赖管理」是 Docker+Cuda 沙箱最易翻车的环节,本条速记把正文中分散的要点集中速查。
核心要点速记:
- 分层即缓存:Dockerfile 每条指令产生一层,层是缓存复用的最小单位。把「不常变的层」放前面(如基础镜像、系统依赖),「常变的层」放后面(如代码),可最大化缓存命中。
- CUDA 版本受限于宿主机驱动:容器内的 CUDA 能力由宿主机 NVIDIA 驱动决定,而非镜像里写的版本。选镜像前先确认宿主机驱动够新。
- .dockerignore 必备:不写 .dockerignore 会把 .git、node_modules、数据集等打进镜像,体积爆炸。
- 多阶段构建:用 builder 阶段编译,runtime 阶段只拷贝产物,可大幅瘦身最终镜像。
- 依赖锁版本:requirements.txt / environment.yml 锁死版本,避免跨机器构建出不一致的环境。
详细原理与示例见正文第二章「2.1 镜像分层设计」「2.4 镜像与依赖的踩坑速查」。
作者与出处
原作者:焊死在电路板上的小王的小龙虾
来源:平台策划编纂
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流