【发布时间】:2021-05-04 05:28:49
【问题描述】:
我正在尝试合并两个 docker 图像。
这是我的 Dockerfile
FROM nvidia/cuda:10.0-devel-ubuntu18.04 AS cuda10
FROM osrf/ros:foxy-desktop
COPY --from=cuda10 /usr/local/cuda-10.0 /usr/local/cuda-10.0
RUN cd /usr/local && ln -s cuda-10.0 cuda
COPY --from=cuda10 \
/usr/lib/x86_64-linux-gnu/libnvidia-ptxjitcompiler.so.460.32.03 \
/usr/lib/x86_64-linux-gnu/libnvidia-fatbinaryloader.so.410.129 \
/usr/lib/x86_64-linux-gnu/libnvidia-ptxjitcompiler.so.410.129 \
/usr/lib/x86_64-linux-gnu/libnvidia-compiler.so.460.32.03 \
/usr/lib/x86_64-linux-gnu/libnvidia-ml.so.460.32.03 \
/usr/lib/x86_64-linux-gnu/libnvidia-allocator.so.460.32.03 \
/usr/lib/x86_64-linux-gnu/libnvidia-opencl.so.460.32.03 \
/usr/lib/x86_64-linux-gnu/libnvidia-cfg.so.460.32.03 \
/usr/lib/x86_64-linux-gnu/libcuda.so.410.129 \
/usr/lib/x86_64-linux-gnu/libcuda.so.460.32.03 \
/usr/lib/x86_64-linux-gnu/
构建失败:
$ docker build . -t nvidia-ros:osrf
Step 5/7 : COPY --from=cuda10 /usr/lib/x86_64-linux-gnu/libnvidia-ptxjitcompiler.so.460.32.03 /usr/lib/x86_64-linux-gnu/libnvidia-fatbinaryloader.so.410.129 /usr/lib/x86_64-linux-gnu/libnvidia-ptxjitcompiler.so.410.129 /usr/lib/x86_64-linux-gnu/libnvidia-compiler.so.460.32.03 /usr/lib/x86_64-linux-gnu/libnvidia-ml.so.460.32.03 /usr/lib/x86_64-linux-gnu/libnvidia-allocator.so.460.32.03 /usr/lib/x86_64-linux-gnu/libnvidia-opencl.so.460.32.03 /usr/lib/x86_64-linux-gnu/libnvidia-cfg.so.460.32.03 /usr/lib/x86_64-linux-gnu/libcuda.so.410.129 /usr/lib/x86_64-linux-gnu/libcuda.so.460.32.03 /usr/lib/x86_64-linux-gnu/
COPY failed: stat usr/lib/x86_64-linux-gnu/libnvidia-ptxjitcompiler.so.460.32.03: file does not exist
但是这些文件确实存在:
$ docker run -it --rm --gpus all nvidia/cuda:10.0-devel-ubuntu18.04
root@fc9c1d8ccdc2:/# ls -la /usr/lib/x86_64-linux-gnu/libnvidia-ptxjitcompiler.so.*
lrwxrwxrwx 1 root root 37 Jan 30 14:13 /usr/lib/x86_64-linux-gnu/libnvidia-ptxjitcompiler.so.1 -> libnvidia-ptxjitcompiler.so.460.32.03
-rw-r--r-- 1 root root 12129448 Aug 20 2019 /usr/lib/x86_64-linux-gnu/libnvidia-ptxjitcompiler.so.410.129
-rw-r--r-- 1 root root 10516984 Dec 27 18:55 /usr/lib/x86_64-linux-gnu/libnvidia-ptxjitcompiler.so.460.32.03
【问题讨论】:
-
我无法重现你的最终测试:如果我拉取
nvidia/cuda:10.0-devel-ubuntu18.04图像,/usr/lib/x86_64-linux-gnu/中没有libnvidia*文件。find在/usr/local/cuda-10.0/compat/中找到这些文件。
标签: docker nvidia nvidia-docker