尝试docker cp
from here之后,它仍然会抛出Error: No such container:path:...
我在做什么错了?
docker exec
命令docker cp
失败答案 0 :(得分:3)
从文档中:
docker cp
命令假定容器路径相对于容器的/
(根)目录。
来源:https://docs.docker.com/engine/reference/commandline/cp/#extended-description
这意味着,当您的docker exec [CONTAINER] ls
受WORKDIR
影响时,您的docker cp
不受此影响。
您应该从那里开始运行:
docker exec [CONTAINER] pwd
docker cp
命令中使用这产生的结果,以在docker cp
命令中使用完全限定的路径例如来自 httpd 图片:
$ docker run -d --name httpd httpd
$ docker exec httpd pwd
/usr/local/apache2
$ docker exec httpd ls
bin
build
cgi-bin
conf
error
htdocs
icons
include
logs
modules
$ docker cp httpd:/usr/local/apache2/conf .
所有这些都是因为the httpd image defines a WORKDIR
上的the folder /usr/local/apache2。