deployment - openshift 3 上的 Angular Cli 部署

标签 deployment openshift angular-cli openshift-3

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

包.json

package.json

服务器.js

server.js

最佳答案

我使用的方法是创建一个 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 应用程序。

关于deployment - openshift 3 上的 Angular Cli 部署,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46842310/

相关文章:

git - 使用部署 Hook 回滚 git 存储库

openshift - 在 OpenShift 环境中部署 secret Java keystore 的好方法是什么?

angular - Ubuntu 16 无法识别 ng 命令

angular - 安装 ng 添加 @ng-bootstrap/ng-bootstrap 时出错

angular - 如何将 Angular 项目设置为另一个 Angular 项目的 package.json 中的依赖项

ruby-on-rails - 使用橡胶部署后,Rails 控制台无法在 ec2 上运行

java - 如何在 Google Cloud Compute Engine 中部署 Spring Boot 应用程序?

php - 使用 php 部署 Liquibase 变更集

mysql - 打开 gps 跟踪器 git 项目 openshift

java - Openshift tomcat 的日志 : catalina. out 和 localhost.out 内容