如何从本机传送一个目录到docker image中
伊谢尔伦
伊谢尔伦 2017-04-21 11:15:18
0
3
730

通过build docker image 添加文件时,需要用到ADD或COPY关键字,但是ADD或COPY后面跟的只能是相对于Dockerfile文件所在的目录的路径的目录或文件,有没有一种方法可以通过绝对路径来传送目录或文件?(貌似docker里面有一个cp命令,但是只能从container中复制文件或目录到本机中,并不能从本机到container中。(为什么??))

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回复(3)
小葫芦

可以用数据卷功能将主机的目录挂载到容器里

黄舟
  1. Dockerfile 中 ADDCOPY 命令不能使用绝对路径,只能使用相对路径。这点在官方文档中说的比较清楚https://docs.docker.com/reference/builder/#add 。

    Multiple resource may be specified but if they are files or directories then they must be relative to the source directory that is being built (the context of the build).

  2. 如果不是非要把文件 build 到 image里,可以通过 run container 的时候通过 -v 参数将 host 文件或目录加载/共享到 container 里。 参考 https://docs.docker.com/userguide/dockervolumes/#mount-a-host-directory-as-a-data-volume

洪涛

docker 的cp命令可以从容器往外复制,也可以从本机复制的容器。

docker cp more.log e7de404c00bd:/tmp/

docker help cp

Usage:    docker cp [OPTIONS] CONTAINER:PATH LOCALPATH|-
    docker cp [OPTIONS] LOCALPATH|- CONTAINER:PATH

Copy files/folders between a container and your host.
Use '-' as the source to read a tar archive from stdin
and extract it to a directory destination in a container.
Use '-' as the destination to stream a tar archive of a
container source to stdout.
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!