当前位置: 首页 > 知识库问答 >
问题:

角应用的Docker映像构建失败

贝德辉
2023-03-14

我正在构建docker图像,但得到以下错误

有关更多详细帮助,请运行"ng[命令名]--help"致命错误:堆限制附近无效的标记-压缩分配失败-JavaScript堆内存溢出

[16:0x558f56668dc0] 212695 ms:标记-扫描971.6 (995.9)-

====JS堆栈跟踪 =========================================

0: ExitFrame [pc: 0x558f5378aed9]

安全上下文:0x118720bc08d1 1:_walk[0x5dc516d83b9][usr/src/studyoptimizer/node_modules/terser/dist/bundle.min.js:~1][pc=0x3b14ab8ca65b](this=0x0f2925361671,0x18b4b1df8fd1)2:/*匿名*/[0x1139625e0009][usr/src/studyoptimizer/node_modules/terser/dist/bundle.min.js:1][bytecode=0x2DA30444][此=。。。

写Node.js报告归档:report.20200222.103313.16.0.001.jsonNode.js报告完成

DockerFile

来自节点:12 alpeas-build-WORKDIR/usr/src/sample-COPY-package。json/usr/src/sample/package。json运行cd/usr/src/sample运行npm安装拷贝/usr/src/sample

运行npm运行构建登录

建立 /usr/src/sample/dist/myapp /usr/share/nginx/html/dv/sampleapp

打包的。json文件我有“构建登录”:“npm运行构建内存

共有2个答案

施超
2023-03-14

我建议使用此Dockerfile:

# stage 1
FROM 12-alpine as builder

WORKDIR /usr/src/sample
COPY .  /usr/src/sample/
RUN npm install @angular/cli -g
RUN npm i
# A head-of-time compilation
RUN ng build --prod

# stage 2
FROM nginx:1.17.1-alpine
RUN rm -rf /usr/share/nginx/html/*
COPY --from=builder /usr/src/sample/dist/myapp /usr/share/nginx/html/
CMD ["nginx", "-g", "daemon off;"]
仲孙子辰
2023-03-14

尝试这个DockerFile:

# Stage 1
FROM node:12-alpine AS build 
WORKDIR /usr/src/sample 
COPY package.json .
# no need for this since you put your workdir path
# RUN cd /usr/src/sample 
RUN npm install 
COPY . .

# Stage 2
FROM nginx:1.17.1-alpine 
COPY --from=build /usr/src/sample/dist/myapp /usr/share/nginx/html/

如果你能将你的图像版本升级到最新版本(节点:13.8-alpine和nginx:1.17.8-alpine)会更好。另外,如果您可以在本地运行构建cmds(尤其是生产构建),以查看它是否正常工作或崩溃。

 类似资料:
  • 目前,我发现谷歌云构建发生在构建docker图像的时候(不像我想象的那样,它会构建我的图像,然后执行我的图像来完成所有的构建)。那是在这篇文章里 谷歌云构建的快速启动 我有一个Dockerfile现在很简单 我有一个单一的下载和提取下载任何工件(zip文件)从最后的单构建运行构建(只有修改的服务器被构建或依赖于上一个CI构建的变化的服务器被构建,就像下游库可能被更改)。第一行只是列出了我需要在一个

  • 我试图通过使用dockerfile-maven-plugin为我的spring boot maven项目构建一个docker映像。我在Windows7上使用Docker工具箱,运行良好。 我得到以下错误: pom.xml构建 我无法得到为什么我们需要谷歌默认凭据来建立一个本地图像。请帮助我,因为我是新的Docker世界。

  • 这是我编写的Dockerfile文件,但是构建镜像的时候发现没有执行npm install,自然也不会有dist文件,不知道是哪里写的有问题,请教一下大家

  • 问题内容: 我正在尝试 使用 官方链接中提到 的API 构建 docker镜像 。 但是我无法获得文件中的内容:示例请求: 有几件事使我感到困惑, 1)在哪里提到 Dockerfile 的 路径 ? 2)“归档文件必须在归档文件的根目录中包含一个构建指令文件,通常称为Dockerfile。” 来自docker docs的此声明,这里的困惑 是存档的根 是 什么 ? 3) 构建图像的详细命令 是什么

  • 我正试图用集装箱装一个样品。docker内的js应用程序。 我的docker文件如下,我在项目的工作目录中 我可以成功创建图像 无论如何,当我想运行应用程序时,它并不是一个正在运行的docker镜像 我不知道我哪里做错了? [PS:]根据评论,我已将CMD更改为 但是我不能构建镜像