2017-04-14 54 views
16

当您创建的Visual Studio 2017支持多克的一个项目,该Dockerfile具有以下行:Dockerfile COPY {源-...}

COPY ${source:-obj/Docker/publish} . 

是什么意思?源宏指向哪里?破折号的含义是什么?

回答

10

这就是所谓的变量替换

在英语中,它翻译成这样:
“嘿泊坞窗,当你建立这个,COPY路径找到在$source变量到图像中的当前目录(.)如果$source为空或。缺席,只需使用默认路径obj/Docker/publish

$source是在执行docker build之前定义的环境变量。

一些参考:

+2

当我试图从命令行来构建我就遇到了这个问题:'LSTAT OBJ /泊坞窗/发表:无这样的文件或目录'。我从VS构建窗口复制命令,所以命令本身应该是正确的。 – Deqing

+0

它没有从命令行工作,因为构建时Visual Studio会传递'source'变量。 – Hasan