menu 树立知识 一款开源实用的Docker镜像瘦身工具
文章开始
文章结尾

一款开源实用的Docker镜像瘦身工具

项目地址

GitHub:https://github.com/slimtoolkit/slim?tab=readme-ov-file#running-containerized

项目简介

Docker-slim是一个用于Docker镜像瘦身的工具,它的主要作用是通过静态和动态分析将大镜像转变为缩略的镜像,同时确保镜像仍然可以正常运行。

功能

Docker-slim的静态分析功能主要是获取镜像的历史信息,追踪到生成镜像的Dockerfile文件,以及设置的port、cmd、entrypoint等数据。而动态分析则主要通过内核工具如ptrace(跟踪系统调用)、pevent(跟踪文件或目录的变化)、fanotify(跟踪进程)来解析出镜像中必要的文件和文件依赖,并将对应文件组织成新镜像。

部署安装

安装Docker

curl -sSL https://get.docker.com/ | sh

安装Docker-compose

下载 Docker-Compose 二进制包curl -L https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose给文件增加执行权限chmod +x /usr/local/bin/docker-compose检查 Docker-Compose 版本docker-compose -v

拉取镜像

sudo docker pull nginx

Docker-slim构建新镜像

sudo docker run -it --rm -v \  /var/run/docker.sock:/var/run/docker.sock \  dslim/slim build nginx

再次查看镜像大小

sudo docker images | grep nginxnginx.slim    latest    e079f3e78783   4 seconds ago    13.3MBnginx         latest    7383c266ef25   12 days ago      188MB

运行服务

docker run --name myNginx -p 8000:80 -d nginx.slim

Web访问

http://ip:8000