我正在通过节点部署我的角度cli应用程序。我使用npm start
而不是ng serve --prod
。节点 - 设置角度cli环境
有没有办法从npm中实现--environment=prod
设置,所以它会用environment.prod.ts
而不是environment.ts
?
我Dockerfile:
FROM node
RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app
COPY package.json /usr/src/app
RUN npm install
COPY . /usr/src/app
EXPOSE 4200
CMD ["npm", "start"]
顶部的package.json的:
{
"name": "asgard2",
"version": "0.0.0",
"license": "MIT",
"scripts": {
"ng": "ng",
"start": "ng serve --host 0.0.0.0",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
},
[...]
要开始生产,我可以运行:
ng serve --prod
但我不能这样做:
npm start --prod
或者至少,当我这样做时,它仍然作为调试部署。我在部署中很可能做错了事。
不明确。你的npm启动脚本是做什么的? –
@JBNizet:一切都是由angular-cli设置的默认设置,但您提出了一个非常好的观点。我应该先建立,然后部署和服务。 –
啊,所以你想让npm开始执行'ng serve --prod'而不是默认的'ng serve'?只需编辑你的package.json并在'ng serve'后添加'--prod'。 –