我想使用 nodejs buildpack 将我的 angular 6 应用程序作为独立应用程序在 PCF 上部署。有没有办法在不添加角度通用特征的情况下做到这一点。
如果不可能,如果我使用静态构建包部署我的应用程序,有没有办法读取 PCF 用户提供的环境变量?
可以使用nginx_buildpack将URL添加到nginx配置中,以访问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
从角度应用程序访问环境变量
要将其与 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。