Docker笔记
发布时间: 2020-12-01 更新时间: 2023-06-05
服务部署 docker,docker-compose 2.20 K 1 分钟 819
Docker笔记
一、构建镜像
docker build . -t=test:latest
二、镜像导出与导入
- 镜像导出
docker save image > image.tar
- 镜像导入
docker load <image.tar
三、删除镜像
- 删除某个镜像
docker rmi [imageId]
- 删除None镜像
docker image prune
四、docker-compose
-
.dockerignore
文件编写方法
.dockerignore
文件的写法和.gitignore
类似,支持正则和通配符,具体规则如下:- 每行为一个条目;
- 以 # 开头的行为注释;
- 空行被忽略;
- 构建上下文路径为所有文件的根路径;
规则 行为 /temp 匹配根路径下一级目录下所有以 temp 开头的文件或目录 //temp* 匹配根路径下两级目录下所有以 temp 开头的文件或目录 temp? 匹配根路径下以 temp 开头,任意一个字符结尾的文件或目录 **/*.go 匹配所有路径下以 .go 结尾的文件或目录,即递归搜索所有路径 *.md !README.md 匹配根路径下所有以 .md 结尾的文件或目录,但 README.md 除外
2.build
参数解析
服务除了可以基于指定的镜像,还可以基于一份 Dockerfile,在使用 up 启动之时执行构建任务,这个构建标签就是 build,它可以指定 Dockerfile 所在文件夹的路径。Compose 将会利用它自动构建这个镜像,然后使用这个镜像启动服务容器
build: /path/to/build/dir
也可以是相对路径
build: ./dir
设定上下文根目录,然后以该目录为准指定 Dockerfile
build:
context: ../
dockerfile: path/of/Dockerfile
例子
version: '3'
services:
webapp:
build: ./dir
如果 context 中有指定的路径,并且可以选定 Dockerfile 和 args。那么 arg 这个标签,就像 Dockerfile 中的 ARG 指令,它可以在构建过程中指定环境变量,但是在构建成功后取消,在 docker-compose.yml 文件中也支持这样的写法:
version: '3'
services:
webapp:
build:
context: ./dir
dockerfile: Dockerfile-alternate
args:
buildno: 1

