如何将文件从docker容器复制到我的主机?

时间:2018-03-16 02:04:09

标签: docker docker-compose drone.io

这似乎是重复的问题?但我认为这不是,而且。我试过google。

在这种情况下,我想用Gogs和Drone构建一个CI管道,用他们很好的文档,我已经构建了它。但现在,我一直在坚持:如何将文件从容器复制到容器中的主机。下面是我的无人机yml配置。

pipeline:
build:
  image: node:7
  commands:
    - cd client
    - npm config set registry https://registry.npm.taobao.org
    - npm install --no-optional
    - yarn run build
    - sudo docker cp $(sudo docker ps -alq):$PWD/build /var/www/react/ 

CI以错误结束:

  

/ bin / sh:sudo:not found

在没有sudo的情况下尝试后,错误仍在继续:

  

/ bin / sh:docker:not found

我找到的答案都是关于将文件复制到容器的主机,shell在主机上运行。但是现在我试图运行的命令是在容器中,所以我该怎么办?或者我错过了什么。

1 个答案:

答案 0 :(得分:1)

您可以在容器上安装卷 - 卷是从主机到容器的映射目录 - 两者之间的共享文件夹

在容器中,您可以将所需文件复制到共享文件夹,主机可以在共享文件夹中访问它们。

在安装完成之前,请勿将文件复制到共享文件夹中。如果这样做,则无法访问这些文件。

以下是关于卷的文档:

https://docs.docker.com/storage/volumes/#create-and-manage-volumes