如何仅使用大文件来构建容器而不添加它?

亚历克西斯

我有一个大的tar /可执行文件(超过30GB)COPY/ADD,但这仅用于安装。一旦安装了应用程序,我就不再需要它了。

我能怎么做?我正在尝试使用它,但:

  • 每次运行构建时,都需要花费几分钟来定义构建上下文。

  • 如果要使用创建焦油docker save我想共享此图像,是否包含最终版本或每个图层?

我找到了一些可以使用的解决方案,RUN wget tar ... && rm tar但我不想为此创建Web服务器。

为什么在构建过程中无法挂载卷?这将非常有用。

Yuankun

使用Docker的多阶段构建。这种机制使您可以丢弃中间的伪像,从而获得轻巧的图像。

例:

FROM alpine:latest as build
# copy large file
# build

FROM alpine:latest as output
# copy necessary files built in the previous stage
COPY --from=build app /app

build除非您明确指定,否则舞台中构建的所有内容都不会包含在最终图像中COPY

文件:https//docs.docker.com/develop/develop-images/multistage-build/

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

上传大文件异步而不处理它

如何使用线程来帮助解析大文件

使用命令行工具构建.jar文件时如何添加它的依存关系?

如何在构建时在Docker容器卷中添加文件

如何使用Gradle基于配置文件构建Quarkus容器?

如何使用`fsetpos()`来“允许对无法使用`fseek()`处理的太大文件进行随机访问?”

我可以使用 docker 容器来保存静态文件,以便其他 docker 容器可以访问它吗?

当我使用程序来构建这个视图时,我该如何修复它?

如何使docker-compose构建映像反复使用它来运行容器?

如何仅使用U-SQL和文件中的某些字段将大文件划分为文件/目录?

如何创建具有附加依赖项的新 pom 文件并在构建时添加它?

一旦将Rust可执行文件构建在Docker容器中,该如何获得它?

如何从python中的大文件中仅读取某些行?

如何使用通配符仅匹配文件而不匹配目录?

如何使用 ID 而不是类来激活图标,以及如何自动删除和添加它?

如何使用RestTemplate转发大文件?

如何使用RSA加密大文件?

如何使用wget下载大文件?

如何使用XMLStreamReader获取大文件的进度

如何使用Meteor存储大文件?

如何使用包含某些文件的ant构建文件来创建EAR文件?

在Bluemix上构建图像时,可以使用COPY来添加文件吗?

如何仅使用文件名来同步文件夹和子文件夹?

如何使用go http.Client(和应用程序引擎urlfetch)仅下载大文件的开头

在Python中使用多处理功能处理大文件:如何每个进程仅加载一次资源?

Makefile不构建对象我如何告诉它

如何在浏览器中使用javascript计算大文件的sha1哈希而不创建内存过载

如何使用 html 和 js 添加和/或减去数字来构建买卖系统?

如何使用nix构建docker容器?