3

我正在尝试将 angular cli 项目部署到 openshift 3。它不断使构建失败,并出现“通用构建失败”,日志中没有更多信息。如果我错了,任何人都可以指导我完成这个过程,有没有办法部署编译的 dist 文件夹并避免构建过程或最佳实践是什么?先感谢您。这是我的脚本:

包.json

包.json

服务器.js

服务器.js

4

1 回答 1

5

我使用的方法是创建一个 Jenkins 管道,其构建步骤执行以下操作

npm install -d
npm install --save classlist.js
$(npm bin)/ng build --prod --build-optimizer
rm -rf node_modules
oc start-build angular-5-example --from-dir=. --follow

您可以看到最后一步是在 Openshift 中启动二进制构建,传递当前目录的内容(减去不需要且相当大的 node_modules)。此二进制构建只是将 ng 构建的 dist 文件夹输出复制到 nginx 基础映像以及一些配置文件中

FROM nginx:1.13.3-alpine
## Copy our nginx config
COPY nginx/ /etc/nginx/conf.d/
## Remove default nginx website
RUN rm -rf /usr/share/nginx/html/*
## copy over the artifacts in dist folder to default nginx public folder
COPY dist/ /usr/share/nginx/html
EXPOSE 8080

CMD ["nginx", "-g", "daemon off;"]

一个完整工作的示例应用程序描述了如何将 Angular CLI 生成的项目部署到 Openshift 3 可以在以下位置找到

https://github.com/petenorth/angular-5-example

该应用程序是 Angular 5 应用程序。

于 2018-01-09T20:52:23.897 回答