使用Docker ADD命令为多个文件

我想复制一些文件到我的图像,我想使用ADD命令。 我在Docker文档中读到了有关ADD的正则expression式,但我不知道可以使用哪种expression式?

我想要这样的东西

FROM registry:5000/ubuntu:14.04 MAINTAINER Me # some stuffs ADD Sources/{file1,file2,load_file} /etc/Sources/ # more stuffs 

注意:expression式是错误的,但是我做到了这一点来向你展示我对ADD命令的期望。 (我是用shell正则expression式思考的)。

那么,我该怎么做呢? 我无法访问链接filepath.Match 。 如果有人有这些规则,请让我知道?

更新

我正在使用这个Docker文档参考

我正在使用这个版本:

 Client version: 1.3.0 Client API version: 1.15 Go version (client): go1.3.3 Git commit (client): c78088f OS/Arch (client): linux/amd64 Server version: 1.3.0 Server API version: 1.15 Go version (server): go1.3.3 Git commit (server): c78088f 

ADD命令和COPY都允许Golang的filepath.Match通配符

您可以在Go的testing代码中find许多示例: https : //golang.org/src/pkg/path/filepath/match_test.go

这里转载的规则适用于那些无法访问Google / golang.org的中国人:

  '*' matches any sequence of non-Separator characters '?' matches any single non-Separator character '[' [ '^' ] { character-range } ']' character class (must be non-empty) c matches character c (c != '*', '?', '\\', '[') '\\' c matches character c character-range: c matches character c (c != '\\', '-', ']') '\\' c matches character c lo '-' hi matches character c for lo <= c <= hi 

通常情况下,你最终会把所有相关的文件放到一个子目录中,然后ADD那个目录,把它们放到镜像中。