検索

ホームページ  >  に質問  >  本文

如何从本机传送一个目录到docker image中

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

伊谢尔伦伊谢尔伦2774日前749

全員に返信(3)返信します

  • 高洛峰

    高洛峰2017-04-21 11:17:18

    データボリューム機能を使用して、ホストディレクトリをコンテナにマウントできます

    返事
    0
  • 黄舟

    黄舟2017-04-21 11:17:18

    1. Dockerfile の ADDCOPY コマンドは絶対パスを使用できず、相対パスのみを使用します。これは公式ドキュメント https://docs.docker.com/reference/builder/#add に明確に記載されています。

      複数のリソースを指定できますが、それらがファイルまたはディレクトリの場合は、ビルド中のソース ディレクトリ (ビルドのコンテキスト) に対して 相対的である必要があります。

    2. イメージにファイルをビルドする必要がない場合は、コンテナーの実行時に -v パラメーターを使用して、ホスト ファイルまたはディレクトリをコンテナーにロード/共有できます。 参考 https://docs.docker.com/userguide/dockervolumes/#mount-a-host-directory-as-a-data-volume
    3. 返事
      0
  • PHP中文网

    PHP中文网2017-04-21 11:17:18

    Docker の cp コマンドは、コンテナーからコピーしたり、ローカル マシンからコンテナーをコピーしたりできます。

    docker cp more.log e7de404c00bd:/tmp/

    リーリー

    返事
    0
  • キャンセル返事