環境變量是指容器運行環境中設定的一個變量,在云容器云引擎負載中的設置效果,與Dockerfile中利用“ENV”指令定義的環境變量效果相同,用戶可在部署工作負載時進行靈活配置。
注意
請務必注意,一旦容器啟動,其內部內容應當保持不變。若嘗試在容器運行期間修改配置項(例如,將應用的密碼、證書或環境變量直接配置到容器中),在容器重啟(如因節點異常導致Pod重新調度)后,這些修改將不復存在,可能導致業務異常。為避免配置丟失,建議通過入參等方式將配置信息導入容器中。
環境變量的設置
自定義方式:用戶可手動輸入環境變量的名稱及其對應的值。
配置項導入:允許將整個配置項中的所有鍵值對導入為環境變量。
配置項鍵值導入:用戶可選擇配置項中的特定鍵值,將其值導入為某個環境變量的值。例如,可將名為“configmap-example”的配置項中鍵為“configmap_key”的值導入為名為“key1”的環境變量的值。
密鑰導入:允許將整個密鑰中的所有鍵值對導入為環境變量。
密鑰鍵值導入:用戶可選擇密鑰中的特定鍵值,將其值導入為某個環境變量的值。例如,可將名為“secret-example”的密鑰中鍵為“secret_key”的值導入為名為“key2”的環境變量的值。
變量/變量引用:允許使用Pod定義的字段值作為環境變量的值。
資源引用:允許使用容器定義的資源請求值或限制值作為環境變量的值。
環境變量的查看
若已知test-cm1和test-secret1的內容,可通過kubectl命令進入Pod并查看環境變量。例如,使用“kubectl exec”命令執行“printenv”以列出所有環境變量。通過此方式,可以驗證環境變量是否已正確設置和導入。
注意
由于密鑰值在YAML中以base64編碼形式展示,因此在查看時需要進行相應的解碼處理。同時,資源引用中的CPU限制值在展示時可能因單位轉換(如從毫核轉換為核)而略有差異。