搜尋

首頁  >  問答  >  主體

如何在 React/Node.js 中從 Kubernetes pod 存取環境變數

<p>我們正在kubernetes pod 中定義一些環境變量,當我嘗試使用process.env.TEST 在節點或React FE 程式碼中使用它們時(因為TEST 作為秘密存在於env 中),我總是未定義,但是當我看到pod 上有變數。 </p> <p>是否有其他方法可以存取這些變量,或者我們需要在 Node.js 或 React.js 上明確執行某些操作。 </p>
P粉790819727P粉790819727435 天前561

全部回覆(1)我來回復

  • P粉459440991

    P粉4594409912023-09-06 00:51:54

    可以使用 ‍process.env. 在 Node.js 中存取 Kubernetes Pod 中的環境變量,類似於在任何 Node.js 應用程式中存取它們的方式。您正在以正確的方式進行操作,因此如果值未定義,則某些內容可能無法正確設定。

    apiVersion: v1
    kind: Pod
    metadata:
      name: secret-env-pod
    spec:
      containers:
      - name: mycontainer
        image: redis
        env:
          - name: SECRET_USERNAME
            valueFrom:
              secretKeyRef:
                name: mysecret
                key: username
          - name: SECRET_PASSWORD
            valueFrom:
              secretKeyRef:
                name: mysecret
                key: password

    React 環境變數:如果您嘗試在 React 應用程式中使用環境變量,則需要以 REACT_APP_ 為前綴。只有以此前綴開頭的環境變數才會嵌入建置中。因此,您將使用 process.env.REACT_APP_ 在程式碼中存取它們。

    回覆
    0
  • 取消回覆