docker-compose.yml:
version: "3"
services:
client:
build:
context: ...
dockerfile: ...
...
server:
build:
context: ...
dockerfile: ...
...
问题在于,当构建到 Dockerfile
的以下部分时:
ng build --prod
它总是失败,并且在服务器上出现内存不足错误(1GB RAM)。
"build-prod": "ng build --prod --aot=true --buildOptimizer=true",
除了在本地机器上构建文件并将其提交到仓库中,然后只需复制/粘贴这些文件之外,还有没有其他解决方法?
client
的Dockerfile
:
# STAGE 1 - Build app
FROM node:12-alpine as client
WORKDIR /app
COPY package*.json ./
RUN npm install
COPY . .
RUN npm run build-prod
#STAGE 2: Run NGINX
FROM nginx
COPY --from=client /app/dist/* /var/www/html
COPY default.conf /etc/nginx/conf.d/default.conf
EXPOSE 80
更新:
我尝试了使用max_old_space_size
的建议,但是构建仍然失败了,虽然这次出现了不同的错误:
在使用max_old_space_size
之前,构建通常在Browserslist:caniuse-lite已过时,请运行下一个命令npm update
后立即失败,但是在这里,它成功通过了那一步。