侧边栏壁纸
  • 累计撰写 12 篇文章
  • 累计创建 10 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

使用docker-slim优化dockerimage大小

爱动脑的脑花
2024-07-05 / 0 评论 / 0 点赞 / 14 阅读 / 4675 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2024-07-05,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

1.介绍一下吧

docker-slim 是一个强大的工具,用于自动分析和优化 Docker 镜像。

官方代码地址:
https://github.com/slimtoolkit/slim?tab=readme-ov-file#installation

2.用一下吧

安装【我这里直接演示用docker装】:

其它安装方式

https://github.com/slimtoolkit/slim?tab=readme-ov-file#installation
docker pull dslim/slim

拉下来了。

docker images

REPOSITORY                         TAG         IMAGE ID       CREATED          SIZE
dslim/slim                         latest      6205a57fba8b   5 months ago     56.3MB
biliupapp                          latest      21b927cf22c3   10 days ago      912MB

开始优化,目标优化镜像biliupapp:
docker run -it --rm -v /var/run/docker.sock:/var/run/docker.sock dslim/slim build biliupapp:latest

解释一下命令:

  • -it 使容器具有交互性

  • --rm 在命令执行完后删除容器

  • -v /var/run/docker.sock:/var/run/docker.sock 允许 Docker-slim 容器与主机的 Docker 守护进程通信

  • dslim/slim 是我们刚刚拉取的 Docker-slim 镜像

  • build biliupapp:latest 是告诉 Docker-slim 优化 biliupapp:latest 镜像

当然还可以加更多参数。可以参考官方项目,我这里总结了一些常用的。

  1. --http-probe
    启用 HTTP 探测。Docker-slim 会尝试发送 HTTP 请求来发现应用的行为。
    例如:--http-probe=true

  2. --expose
    指定需要暴露的端口。
    例如:--expose 8080,9000

  3. --include-path
    保留指定的文件或目录。
    例如:--include-path /app/config --include-path /app/data

  4. --exclude-pattern
    排除匹配特定模式的文件。
    例如:--exclude-pattern *.tmp

  5. --env
    设置环境变量。
    例如:--env MYVAR=value

  6. --mount
    指定需要挂载的卷。
    例如:--mount /host/path:/container/path

  7. --exec
    在容器中执行指定的命令。
    例如:--exec "node server.js"

  8. --tag
    为优化后的镜像指定自定义标签。
    例如:--tag myapp:optimized

  9. --preserve-path
    保留指定的路径,即使它们看起来没有被使用。
    例如:--preserve-path /app/licenses

  10. --continue-after
    在执行指定命令后继续优化过程。
    例如:--continue-after 30

  11. --show-clogs
    显示容器日志。
    使用:--show-clogs=true

  12. --use-seccomp
    使用 seccomp 配置文件。
    使用:--use-seccomp=true

docker run -it --rm -v /var/run/docker.sock:/var/run/docker.sock dslim/slim build [参数] 镜像名:标签

优化过程:

等它优化完以后,我们再次查看镜像大小:

docker images

REPOSITORY                         TAG         IMAGE ID       CREATED          SIZE
dslim/slim                         latest      6205a57fba8b   5 months ago     56.3MB
biliupapp.slim                     latest      aa9a5cd54b41   26 minutes ago   112MB
biliupapp                          latest      21b927cf22c3   10 days ago      912MB

牛批。

0
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin

评论区