我正在使用 docusaurus v2.0.0-alpha.39 生成文档,并使用 bitbucket 管道来构建所有内容并将其推送到 AWS。
问题是我Container 'Build' exceeded memory limit.
在执行yarn build
命令时遇到了问题。
在bitbucket-pipelines.yml
中,我已经尽可能地增加了内存(构建为 7680mb,docker 为 512mb):
deploy: &deploy
size: 2x
name: Deploy
caches:
- node
script:
- yarn
- yarn build
我还尝试通过--max-old-space-size=7168
各种方式设置来限制节点内存使用:
{
"scripts": {
"build": "cross-env NODE_OPTIONS=--max-old-space-size=7168 node node_modules/@docusaurus/core/bin/docusaurus build"
}
}
{
"scripts": {
"build": "NODE_OPTIONS=--max-old-space-size=7168 node node_modules/@docusaurus/core/bin/docusaurus build"
}
}
{
"scripts": {
"build": "node --max-old-space-size=7168 node_modules/@docusaurus/core/bin/docusaurus build"
}
}
但无论我把什么作为最大变量,我的节点进程都会上升并使用多达 14GB 的内存!如果我放一个“小”--max-old-space-size,我会得到:
FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
我不得不承认我有相当大的文档(每个版本 6,3 MB 和 1.493 个项目),但我什至无法使用 docusaurus 对它们进行版本控制,每个版本都会增加 4/5GB 的内存使用量......
您对此有潜在的解决方案吗?