Hus*_*din 6 cpu-usage node.js docker docker-build npm-run
我的 Dockerfile 执行RUN npm run build命令。当我docker build在 t2.micro EC2 实例上执行命令时,实例冻结并且不响应(我什至无法使用 ssh 连接)。当我监控CPU使用率时,我可以看到CPU使用率达到了最高水平。因此,我尝试使用--max_semi_space_size=1和--max_old_space_size=198参数来限制内存使用,但它不起作用。
如果我可以为 docker build 命令设置 CPU 使用限制,我认为它可能会起作用。有人能帮我吗?
我知道,如果我增加 EC2 实例的 vCPU 数量,那么我可以毫无问题地构建我的应用程序,但由于它是一个演示项目,我尝试将其部署在免费层上。
Dockerfile:
FROM node:16-alpine
COPY . .
# Install dependencies
RUN node \
--max_semi_space_size=1 \
--max_old_space_size=198 \
$(which npm) ci
# Build the app
RUN node \
--max_semi_space_size=1 \
--max_old_space_size=198 \
$(which npm) run build
EXPOSE 3000
# Start the app
CMD [ "npx", "serve", "build" ]
Run Code Online (Sandbox Code Playgroud)
小智 0
在您的系统中,运行sudo docker info. 如果您收到警告:没有交换限制支持,则需要首先通过运行sudo nano /etc/default/grub并添加以下行来手动编辑 grub 配置:GRUB_CMDLINE_LINUX="cdgroup_enable=memory swapaccount=1"并保存。
然后就可以限制cpu了。有关限制内存和CPU的命令可以查看这篇文章。 限制容器中的CPU和内存使用
| 归档时间: |
|
| 查看次数: |
2589 次 |
| 最近记录: |