一尘不染

使用Docker ADD命令处理多个文件

docker

我想将一些文件复制到我的图像中,并希望使用ADD命令。我在Docker文档中阅读了有关ADD的正则表达式的信息,但是我不知道我可以使用哪种表达式?

我想要这样的东西

FROM registry:5000/ubuntu:14.04
MAINTAINER Me

# some stuffs

ADD Sources/{file1,file2,load_file} /etc/Sources/

# more stuffs

注意:该表达式是错误的,但我这样做是为了向您展示对ADD命令的期望。(我在shell正则表达式中进行了思考)。

那么,我该怎么做呢?我无法访问链接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

阅读 3497

收藏
2020-06-17

共1个答案

一尘不染

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

您可以在Go的测试代码中找到许多示例: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
2020-06-17