我有一些運行的命令,用於在Ubuntu 14.04上安裝Cuda支持。爲了做到這一點,我運行下面的命令,這是一系列組合命令:Docker命令成功運行容器,但在Dockerfile上失敗
apt-get install -y software-properties-common && add-apt-repository -y ppa:graphics-drivers/ppa && apt-get --purge remove "nvidia*" && apt-get --purge remove "cuda*" && cd Downloads && dpkg -i cuda-repo-ubuntu1404-7-5-local_7.5-18_amd64.deb && apt-get -y update && apt-get -y upgrade && apt-get install -y cuda
當我做它運行的容器上,也就是我的Dockerfile僅包含命令
FROM ubuntu:14.04
,然後我使用docker run -it <my new image name> bash
,它成功!當我從Dockerfile做到這一點,它得到了很多運行時錯誤,如:
調用-rc.d的:政策的rc.d否認力重載的執行。
invoke-rc.d:policy-rc.d拒絕執行start。
我想澄清一下 - 當我在容器上運行bash和遵循Dockerfile指令一步一步成功了,但如果我執行一樣奔跑在dockerfile命令,使用docker build
失敗。
任何想法可能是什麼問題以及如何解決它?
我要指出,我在一些地方人們,請將以下命令添加到他們的dockerfile看到:
RUN echo "#!/bin/sh\nexit 0" > /usr/sbin/policy-rc.d
沒有什麼更優雅?在運行docker build
與docker run -it
時不是關於不同的權限嗎?
該命令將如何解決'policy-rc.d'問題。你需要解釋你的答案,而不僅僅是粘貼 –