如何使用Dockerfile构builddocker-build?
我build立docker形象。 但它不成功。
/Users/username/.vim
存在于我的主机操作系统,但它不成功。 我如何才能成功dockerbuild设?
错误信息:
Step 16 : ADD /Users/username/.vim/ /root/.vim lstat Users/username/.vim/: no such file or directory
Step 16 : ADD /Users/username/.vim/ /root/.vim lstat Users/username/.vim/: no such file or directory
以下是我的Dockerfile。
Dockerfile:
FROM ubuntu:latest MAINTAINER MyName RUN /bin/bash RUN mkdir ~/cworks RUN mkdir ~/pyworks RUN apt-get -y update RUN apt-get -y install curl RUN apt-get -y install clang RUN apt-get -y install man RUN apt-get -y install vim RUN apt-get -y install python3 RUN apt-get -y install git RUN apt-get -y install make RUN apt-get -y upgrade RUN curl -kL https://bootstrap.pypa.io/get-pip.py | python3 ADD /Users/username/.vim/ /root/.vim ADD /Users/username/.vimrc /root/.vimrc
FROM ubuntu:latest MAINTAINER MyName RUN /bin/bash RUN mkdir ~/cworks RUN mkdir ~/pyworks RUN apt-get -y update RUN apt-get -y install curl RUN apt-get -y install clang RUN apt-get -y install man RUN apt-get -y install vim RUN apt-get -y install python3 RUN apt-get -y install git RUN apt-get -y install make RUN apt-get -y upgrade RUN curl -kL https://bootstrap.pypa.io/get-pip.py | python3 ADD /Users/username/.vim/ /root/.vim ADD /Users/username/.vimrc /root/.vimrc
平台:OS X 10.11.4
您不能在不在包含您的Dockerfile的目录内的文件上执行ADD(或COPY)。
其原因是build立docker图像意味着是一个确定性的构build。 如果我用Dockerfile在我的计算机上构buildDockerimage,我会得到一个不同的.vim docker团队施加这个限制来鼓励人们使用自包含的目录和Dockerfile以及任何要添加到其中的文件。
在你的情况下,你需要先将文件复制到Dockerfile的同一个目录下,然后运行:
ADD .vim /root/.vim
或者可以说更好:
COPY .vim /root/.vim
改用这个forms。 它适用于隐藏文件(点文件)和文件名包含空格。
ADD ["/Users/username/.vim/", "/root/.vim"]
.vim
后删除尾部的斜线
所以,它会一样
ADD /Users/username/.vim /root/.vim