镜像构建参数
Dockerfile实例
建立构建目录,编写构建文件
mdkir docker
cd docker/
vim Dockerfile
ADD不能使用绝对路径,所以要把下载的包拷贝到当前途径中
docker build -t webserver:v1 .通过dockerfile生成镜像
测试镜像可用性
docker images webserver
docker history webserver:v1
docker run -d --name checkimage webserver
生成镜像之后我们发现这个镜像非常大,占用内存
所以我们需要优化一下镜像
镜像优化策略
选择最精简的基础镜像
减少镜像的层数
清理镜像构建的中间产物
镜像优化示例
缩减镜像层
run命令一次就会生成一层镜像层,所以我们要减少run命令的使用
构建完成的之后的包也可以不用,然后也可以清理一下缓存
这样生成的镜像层会比第一的小很多
还可以多阶段构建
对比构建的镜像大小
还可以使用最精简镜像
下载地址
https://github.com/GoogleContainerTools/distroless
下载镜像
docker pull gcr.io/distroless/base
利用最精简镜像构建:
mkdir new
cd new/
vim Dockerfile
docker build -t webserver:v4 .
对比大小