将 Docker 镜像编译成独立运行的二进制文件dockerc

项目简介


不再需要docker run ,不再需要pip install ,不再需要npm i ,只需为您的用户提供他们可以运行的可执行文件!

用法

从最新版本安装 dockerc 。

# Image from docker hub$ dockerc --image docker://oven/bun --output bun# Image in local docker daemon storage$ dockerc --image docker-daemon:mysherlock-image:latest --output sherlock_bin# Specify target instruction set architecture$ dockerc --image docker://hello-world --arch arm64 --output hello

然后可以像使用通常的二进制文件一样调用输出二进制文件。您还可以像使用docker run时一样指定-e-v 。可以直接访问容器内运行的网络服务,而无需指定-p 。


Skopeo 用于加载图像,其他位置请参阅其文档。


从源代码构建

请注意,该项目使用 Git 子模块。如果您克隆此存储库,您可能需要运行以下命令来初始化和更新子模块:

$ git submodule init$ git submodule update

这将确保您下载并更新所有相关的子模块内容。正确初始化子模块后,您可以继续执行下面的编译说明。

$ zig build -Doptimize=ReleaseSafe -Dtarget=x86_64-linux-musl$ zig build -Doptimize=ReleaseSafe -Dtarget=aarch64-linux-musl


特征

  • 将 docker 镜像编译成可移植的二进制文件

  • 无根容器

  • MacOS 和 Windows 支持(使用 QEMU)

  •  arm64 support ARM64支持

  • 支持使用-e指定环境变量

  • 支持使用-v指定卷

项目链接

https://github.com/NilsIrl/dockerc

扫码加入技术交流群,备注开发语言-城市-昵称

(文:GitHubStore)

欢迎分享

发表评论