安装docker这里就不再阐述了,网上一搜一大把
1.在windows拉取docker镜像(可省略)
(1)编译环境
docker pull nvidia/cuda:11.3.1-devel-ubuntu20.04
(2)部署环境
docker pull nvidia/cuda:11.3.1-runtime-ubuntu20.04
然后在将拉下来的英伟达进行保存
docker save -o cuda_11.3.1-runtime-ubuntu20.04.tar nvidia/cuda:11.3.1-runtime-ubuntu20.04
保存的文件默认在 C:\Users\13951>命令行所在的文件
2.在Linux上加载docker镜像
docker load -i cuda_11.3.1-runtime-ubuntu20.04.tar
3.配置tensorRT环境
docker file可以这样写
# 基于现有的 CUDA 镜像
FROM nvidia/cuda:11.3.1-cudnn8-devel-ubuntu20.04
# 设置 TensorRT 相关的环境变量
ENV TENSORRT_VERSION=8.6.1.6
# 拷贝所有必要的 TensorRT 文件到 Docker 容器中
# 你可以直接复制整个 lib 目录中的 .so 文件,并且只需要包含动态链接库(.so 文件)
COPY TensorRT-8.6.1.6/targets/x86_64-linux-gnu/lib/libnvinfer.so* /usr/local/cuda-11.3/lib64/
COPY TensorRT-8.6.1.6/targets/x86_64-linux-gnu/lib/libnvinfer_plugin.so* /usr/local/cuda-11.3/lib64/
COPY TensorRT-8.6.1.6/targets/x86_64-linux-gnu/lib/libnvonnxparser.so* /usr/local/cuda-11.3/lib64/
COPY TensorRT-8.6.1.6/targets/x86_64-linux-gnu/lib/libnvparsers.so* /usr/local/cuda-11.3/lib64/
COPY TensorRT-8.6.1.6/targets/x86_64-linux-gnu/lib/libnvinfer_builder_resource.so* /usr/local/cuda-11.3/lib64/
# 如果需要其他的 TensorRT 库文件,也可以继续添加类似的 COPY 命令
# 拷贝 TensorRT 的头文件到 CUDA 的 include 目录
COPY TensorRT-8.6.1.6/include/* /usr/local/cuda-11.3/include/
# 更新库路径
ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-11.3/lib64
具体需要什么版本的tensor rt要怎么改
然后运行
docker build -t cuda-tensorrt:11.3.1 .
4.进入镜像配置其他环境
略