首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过Kubernetes使Laravel env变量在前端可见

通过Kubernetes使Laravel env变量在前端可见
EN

Stack Overflow用户
提问于 2022-02-16 09:27:08
回答 1查看 280关注 0票数 0

我有一个用Laravel构建的应用程序,以及我想让它们通过前端访问的env变量之一。

正如官方的Laravel文档所指出的:https://laravel.com/docs/master/mix#environment-variables

如果我们用MIX_前缀对特定的env变量进行前缀,它们就可以从JavaScript中获得和访问。在当地,这是完美的工作。

现在,问题是,在部署到暂存和生产时,我希望通过Kubernetes configmap设置env变量。

这是我的config-map.yaml文件

代码语言:javascript
复制
apiVersion: v1
kind: ConfigMap
metadata:
  name: {{ template "common.fullname" . }}-app-config
  labels:
    {{- include "common.labels" . | indent 4 }}
data:
  .env: |+
    EVENT_LOGGER_API={{ .Values.app.eventLoggerApi }}
    MIX_EVENT_LOGGER_API="${EVENT_LOGGER_API}"

现在,我的deployment.yaml文件

代码语言:javascript
复制
  volumes:
   - name: app-config
      configMap:
        name: {{ template "common.fullname" . }}-app-config
  
  volumeMounts:
   - name: app-config
     mountPath: /var/www/html/.env
     subPath: .env

此env变量在后端Laravel中可见,但在本地运行时不能通过JavaScript访问。

代码语言:javascript
复制
process.env.MIX_EVENT_LOGGER_API

在通过K8 configmap设置这个env变量以及通过JavaScript访问这些变量之前,有人有过这样的经验吗?

EN

回答 1

Stack Overflow用户

发布于 2022-02-16 17:01:32

如果在构建前端之后添加变量,则这些变量将不可用。

您需要在构建/推送的工作中包含这些变量。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71139196

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档