镜像的优化
- 选择最精简的基础镜像
- 减少镜像的层数
- 清理镜像构建的中间产物
- 注意优化网络请求
- 尽量去用构建缓存
- 使用多阶段构建镜像
具体操作:
第一次构建:(正常构建)
1.编辑dockerfile(当前目录/tmp/docker)
[root@server1 docker]# cp /root/nginx-1.15.8.tar.gz .
[root@server1 docker]# ls
Dockerfile nginx-1.15.8.tar.gz website yum.repo
[root@server1 docker]# vim Dockerfile
dockerfile的内容:
FROM rhel7
COPY yum.repo /etc/yum.repos.d/dvd.repo
ADD nginx-1.15.8.tar.gz /mnt
WORKDIR /mnt/nginx-1.15.8
RUN rpmdb --rebuilddb && yum install -y gcc make zlib-devel pcre-devel
RUN sed -i 's/CFLAGS="$CFLAGS -g"/#CFLAGS="$CFLAGS -g"/g' auto/cc/gcc ##去掉debug日志
RUN ./configure --prefix=/usr/local/nginx
RUN make
RUN make install
EXPOSE 80
VOLUME ["/usr/local/nginx/html"]
CMD ["/usr/local/nginx/sbin/nginx","-g","daemon off;"] ##命令的运行方式
2.构建镜像
[root@server1 docker]# docker build -t nginx:v1 .
3.运行容器,查看运行的容器以及镜像结构
[root@server1 docker]# docker rm -f apache
apache
[root@server1 docker]# docker run -d --name nginx -p 80:80 nginx:v1
7b4b65124b8ba2fb6003ed800c89e81548996b1d5b4b9e4bfa8f0ce149de9e64
[root@server1 docker]# docker ps
[root@server1 docker]# docker history nginx:v1
4.在浏览器中访问宿主机的IP可以看到Nginx的默认发布页
5.查看容器的具体挂载信息
[root@server1 docker]# docker inspect nginx
(1)切换到上图中的路径,