我无法在当前目录中添加文件。
$ ls
Dockerfile id_rsa.pub
$ docker build
结果:
Step 15 : ADD id_rsa.pub /home/ubuntu/.ssh
stat /mnt/sda1/var/lib/docker/aufs/mnt/3c26803340b5ac907bcf6a32dd2c45da9ca98
ee2e4106f9a57a45d244619092b/home/ubuntu/.ssh/id_rsa.pub: not a directory
我无法在完整路径的目录中添加文件。
$ ls /Users/weed/.ssh
config id_rsa.pub id_rsa known_hosts
$ docker build
结果:
Step 15 : ADD /Users/weed/.ssh/id_rsa.pub /home/ubuntu/.ssh
Users/weed/.ssh/id_rsa.pub: no such file or directory
答案 0 :(得分:3)
尝试在ADD
行
ADD /Users/weed/.ssh/id_rsa.pub /home/ubuntu/.ssh/
来自文档:
如果< dest>不以尾部斜杠结尾,它将被视为常规文件和< src>的内容。将写在< dest>。
所以我认为/home/ubuntu/.ssh
已经是容器中的一个目录,ADD
命令试图将其覆盖为文件而不是在目录中创建新文件。
答案 1 :(得分:0)
您尝试添加的文件类似于SSH公钥。你能用ls -la
检查id_rsa.pub的权限和〜/ .ssh的权限吗? Docker的构建过程可能无法访问其中任何一个。