gpt4 book ai didi

管道中的 Docker 内存限制

转载 作者:行者123 更新时间:2023-12-04 17:52:29 26 4
gpt4 key购买 nike

我使用 atlassian pipelines .

有时管道失败并显示此消息

Build memory limit exceeded.

我还在本地运行与在管道中运行相同的 docker 镜像。 (我在本地运行与我在 bitbucket-pipelines.ymlimage: 中声明的相同的图像)

我想要一种在本地运行我们的 docker 镜像的方法,具有管道强制执行的相同限制 (4gb):https://confluence.atlassian.com/bitbucket/limitations-of-bitbucket-pipelines-827106051.html#LimitationsofBitbucketPipelines-Buildlimits

我想这样做以确保我保持在管道限制的 90% 以内。 (所以 3.6GB)

这是实现该目标的方法吗?

docker run --rm --memory=3600M --memory-swap=3600M docker-image-same-as-we-run-in-pipelines

最佳答案

伙计,这是屁股上的痛苦。我以前一直在你的鞋子里。问题是即使您可能处于限制范围内,管道本身也会占用一定百分比。所以我有一个角度项目,它几乎在 4GB 内存下构建。但是在管道上运行超出了内存。所以我必须在管道中使用 Size: 2x 参数,以便为管道分配双倍内存。唯一的缺点是构建时间在计费时被计为双倍。因此,如果您运行它 4 分钟,它会根据您的配额按 8 分钟计费。

如果 docker 有另一个解决方案,那么我不知道,但要运行该解决方案,您可以执行此操作。或者还有另一种方法,最近 Atlassian 引入了 Runners 概念,您可以在其中附加本地运行器来构建您的管道,这样您就可以利用您的硬件并免于向 Atlassian 收费。不过我还没试过。 https://support.atlassian.com/bitbucket-cloud/docs/runners/

关于管道中的 Docker 内存限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43531493/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com