我有一个使用默认配置的create-react-app。
我在.env文件中配置了一些端口和API。
REACT_APP_PORT=3000
并且使用 process.env.REACT_APP_PORT 在应用内部中。
我将服务器部署在 Kubernetes 上。 有人能解释一下如何配置我的 create-react-app,以使用 pod/容器提供的环境变量吗?
我想通过 kubectl svc 给定的名称访问集群 IP。
更新 1:
我有相反的情况,我不希望我的前端环境变量在 Kubernetes Pod 容器中进行配置,而是想使用 Pod 的环境变量,比如使用 CLUSTER_IP 和 CLUSTER_PORT,并将它们的名称定义为我的 React 应用程序中的 Pod 环境变量。
例如-
NAME TYPE CLUSTER-IP
XYZ ClusterIP x.y.z.a
我想在React应用中访问XYZ,指向集群IP(x.y.z.a)。
env
变量REACT_APP_PORT
仅由create-react-app
设置的开发脚本使用。尽管如此,这里是有关如何处理环境变量的Kubernetes文档链接:https://kubernetes.io/docs/tasks/inject-data-application/define-environment-variable-container/ - guzmonnecreate-react-app
时的环境变量。请注意,一旦应用程序构建完成,您将无法使用环境变量。您只能在运行开发服务器时使用它们,因为它会将环境变量值注入到React代码中。 - guzmonne