制作 Docker 镜像的时候,有一个非常关键的文件 .dockerignore。根据这个文件的描述就知道它有两个特点:1、它是一个隐藏文件;2、它可以专用与忽略掉 docker 镜像的某些文件。
和 .dockerignore 类似的文件其实也有很多,比如我们常见的 git 中的 .gitignore 文件,npm 中的 .npmignore 文件等。都可以用来忽略掉某些指定的文件被打包,或被发布。
在 .dockerignore 文件中,“*”表示拒绝所有,“!”表示可被接受的路径。
*
!xttblog/hello.java
.dockerignore 文件中配置的路径或文件将默认被忽略。“*”代表忽略所有,“!”就是取反的意思。
.git
test/hello.java
上面的配置就是说,在构建 docker 镜像的时候,忽略 .git 文件和忽略 test 目录下的 hello.java 文件。
#排除 test 目录下的所有文件
test/*
#排除 md 目录下的 xttblog.md 文件
md/xttblog.md
#排除 xttblog 目录下的所有 .md 的文件
xttblog/*.md
#排除以 xttblog 为前缀的文件和文件夹
xttblog?
#排除所有目录下的 .sql 文件夹
**/*.sql
需要注意的是,如果你的 .dockerignore 文件不起作用,那么首先你需要确认的是,你的 docker 版本是否大于等于 Docker 1.1.0。因为 .dockerignore 这个特效是从 docker 1.1.0 版本开始才有的。另外需要注意的是,不要乱用“/”,要注意是从根目录排除还是从当前目录排除。
: » 从入门到跑路的 .dockerignore 忽略文件
原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/252156.html