A MoonBit toolkit for analyzing OCI container images: layer stacking, whiteout diffs and size-efficiency reports
# 只体检:打印体积报告与一句 gate 结论
moon run --target native cmd/main -- demo-image.tar
# 门禁:按 rules.json 判定,退出码 0/1/2 分别表示全过 / 有失败 / 规则非法
moon run --target native cmd/main -- demo-image.tar --rules rules.json
moon run --target native cmd/main -- demo-image.tar --rules rules.json --format annotations
# 逐层浏览(dive 交互界面的只读替身):看第 N 层应用完之后的文件树与这层 diff
moon run --target native cmd/main -- demo-image.tar --layer 1
moon run --target native cmd/main -- demo-image.tar --layer 1 --path /app
# 全屏交互式看树(TUI):上下走行、折叠目录、左右切层
moon run --target native cmd/main -- demo-image.tar --tui
moon run --target native cmd/main -- nginx:latest --from-image --tui
# 按效率看路径:谁把 efficiency 分数拉下来的
moon run --target native cmd/main -- demo-image.tar --efficiency
moon run --target native cmd/main -- demo-image.tar --efficiency --top 20 --path /app
moon run --target native cmd/main -- demo-image.tar --efficiency --format json
# 不落盘直接分析在线镜像:位置参数当镜像名,走 docker_cli 取归档
moon run --target native cmd/main -- nginx:latest --from-image
moon run --target native cmd/main -- nginx:latest --from-image --verbose
# 完全离线:本地缺镜像也不拉,一次网络请求都不发
moon run --target native cmd/main -- nginx:latest --from-image --no-pull
# 单次 docker 调用最多等多久(秒,默认 30),拉大镜像时调大
moon run --target native cmd/main -- nginx:latest --from-image --timeout 300
# 直接连 registry 拉镜像(不碰本地 docker):存成 tar 或 OCI layout
moon run --target native cmd/main -- --save --from-registry -o nginx.tar library/nginx:1.27
moon run --target native cmd/main -- --save --from-registry --archive-format oci -o ./nginx-oci library/nginx:1.27
# 拉下来直接分析,一条命令出报告
moon run --target native cmd/main -- --from-registry library/nginx:1.27
# 多架构选平台 / 自建 http registry / 私有仓库
moon run --target native cmd/main -- --save --from-registry --platform linux/arm64 -o x.tar ghcr.io/owner/repo:tag
moon run --target native cmd/main -- --save --from-registry --insecure-registry -o x.tar localhost:5000/team/app:devInstall
Download zipA MoonBit toolkit for analyzing OCI container images: layer stacking, whiteout diffs and size-efficiency reports