#docker-build #docker #xargs #buildkit #visualization

程序+库 buildxargs

xargs BuildKit 与 docker buildx bake

1 个稳定版本

1.2.0 2023 年 11 月 20 日

#385Unix API

MIT 许可证

18KB
295 代码行

buildxargs ~ xargs BuildKit 的 xargs 与 docker buildx bake

在 BuildKit 工具集中运行多个并发 docker build 作业的高效方式。

# export DOCKER_HOST=ssh://...
❯ buildxargs <<EOF
docker build --build-arg ARGs='--format mp4 -- https://www.youtube.com/watch?v=Hj7LwZqTflc' --output=$HOME https://github.com/fenollp/dockerhost-tools--yt-dlp.git
docker build -o=. --platform=local --build-arg PREBUILT=1 https://github.com/FuzzyMonkeyCo/monkey.git
docker build --platform=local -o . https://github.com/docker/buildx.git
EOF

相当于执行以下操作

 export DOCKER_BUILDKIT=1
 xargs -P0 -o -I{} {} <<EOF
docker build ...
docker build ...
...
docker build ...
EOF

用法

buildxargs 1.0.0
Pierre Fenoll <[email protected]>
xargs for BuildKit with docker buildx bake

USAGE:
    buildxargs [OPTIONS]

OPTIONS:
        --debug                  Print more things
    -f, --file <FILE>            Read commands from file [default: -]
    -h, --help                   Print help information
        --no-cache               Do not use cache when building the image
        --print                  Print the options without building
        --progress <PROGRESS>    Set type of progress output ("plain", "tty") [default: auto]
        --pull                   Always attempt to pull all referenced images
    -V, --version                Print version information

安装

cargo install --locked --git https://github.com/fenollp/buildxargs
# also: install Docker ≥ 18.09

另请参阅

关于此的博客文章

相关

  • 我的 vi[sual] xargs 工具
  • fmtd一个用于在 docker build 作业中传输数据的库

待办事项

  • 在后台生成任务,附加到显示日志,取消。
OPTIONS:
        --attach ssh HOST -t /usr/bin/htop + replay daemon logs
        --background Spawns calls using bg daemon and logs text back for log replain

依赖项

~3–12MB
~142K SLoC