docker cp 返回 'invalid output path' 错误

docker cp returning 'invalid output path' error

用例:将包含一些凭据的文件从本地计算机目录复制到 现有且已创建的 Docker container/volume

根据 documentation 关于使用 docker cp,我构建了如下命令行语句:

docker cp mynodered:/Users/<myUserName>/Documents/nodered-volume/creds.json /data/creds.json

但是,我总是收到错误消息: invalid output path: directory "/data" does not exist

最终,我发现 docker cp 语句的语法 更改为:

docker cp /Users/<myUserName>/Documents/nodered-volume/creds.json mynodered:/data/creds.json 解决了问题

故障排除 tl;dr

  1. 我没有在任何地方看到这个文档,但对我有用的语法是 docker cp <current local filepath> containerName:/<intended container filepath>
  2. 确保不是一个 space在containerName:/<intended container filepath>
  3. 之间

However, I consistently get an error returned: invalid output path: directory "/data" does not exist

您收到以上错误消息是因为该目录不存在

# ensure /data exists if not create directory
mkdir -pv /data

# now copy whatever from container to host directory
docker cp <container-id-or-name>:/absolute/path/of/your/file /data