类似于git中的.gitignore,忽略某些文件;
docker是CS架构,由客户端docker-cli和服务端docker daemon组成;
docker build时,客户端会将context中的文件全部发送给服务端。.dockerignore可减少文件的传输数量,提升build效率。
.dockerignore匹配规则:
符号 | 作用 |
---|---|
# | 注释 |
* | 匹配0或多个非/的字符 |
? | 匹配1个非/的字符 |
** | 0个或多个目录 |
! | 除...外,需结合上下文语义 |
.dockerignore普通示例:
# comment
*/*/temp*
temp?
**/*.md
.dockerignore排除示例1:
*.md
!README.md
除README.md外,所有其他md文件都被docker忽略
.dockerignore排除示例2:
*.md
!README*.md
README-secret.md
除README*.md外,所有其他md文件(包括README-secret.md)都被docker忽略
.dockerignore排除示例3:
*.md
README-secret.md
!README*.md
除README*.md外,所有其他md文件(不包括README-secret.md)都被docker忽略,即示例3第2行不起作用。
!语句可能因为不同的上下文语义,产生不同结果
网友评论