【问题标题】:How to deploy angular 6 app on cloud foundry using node js buildpack?如何使用 node js buildpack 在 Cloud Foundry 上部署 Angular 6 应用程序?
【发布时间】:2018-10-25 09:21:55
【问题描述】:
我想使用 nodejs buildpack 将我的 angular 6 应用程序作为独立应用程序部署在 PCF 上。有没有办法在不添加角度通用功能的情况下做到这一点。
如果不可能,如果我使用静态 buildpack 部署我的应用程序,是否有办法读取 PCF 用户提供的环境变量?
【问题讨论】:
标签:
angular
angular6
cloud-foundry
【解决方案1】:
可以使用nginx_buildpack向nginx配置添加一个url来访问cloudfoundry环境变量。
在应用程序的根文件夹中使用 nginx.conf :
http {
server {
listen {{port}};
root public;
location /myenv {
return 200 '{{ env "MYENV" }}';
}
}
}
events {}
使用推送应用程序:
cf push <myapp> -b https://github.com/cloudfoundry/nginx-buildpack.git --no-start
cf set-env <myapp> MYENV "whatever you like"
cf start <myapp>
然后您可以使用/myenv从角度应用程序访问环境变量
【解决方案2】:
要将它与 Staticfile buildpack 一起使用,只需有一个名为“public”的文件夹,其中包含所有已编译的 js/css/html 文件和一个名为“Staticfile”的文件。
压缩此文件夹并使用此存档将其推送到 pcf 应用程序。
your app
- public <- folder
- js
- css
- index.html
- Staticfile <- file
Staticfile 使用 nginx 来提供您的文件,并且有一个默认的 nginx.conf
如果您想进一步自定义您的 nginx 以使用 api 网关或反向代理等功能,请使用 nginx Buildpack。