我應該將“MySQL_URI”添加到 MySQL Kubernetes 部署檔案嗎?

我應該將“MySQL_URI”添加到 MySQL Kubernetes 部署檔案嗎?

這是一個Kubernetes最初僅使用MongoDB資料庫的部署檔案。我MySQL也嘗試添加如下內容:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: auth-depl
spec:
  replicas: 1
  selector:
    matchLabels:
      app: auth
  template:
    metadata:
      labels:
        app: auth
    spec:
      containers:
        - name: auth
          image: learner/auth
          env:
            - name: MONGO_URI
              value: 'mongodb://auth-mongo-srv:27017/auth'
            - name: JWT_KEY
              valueFrom:
                secretKeyRef:
                  name: jwt-secret
                  key: JWT_KEY
            - name: MYSQL_ROOT_PASSWORD
              valueFrom:
                secretKeyRef:
                  name: mysql-secret
                  key: MYSQL_KEY
---
apiVersion: v1
kind: Service
metadata:
  name: auth-srv
spec:
  selector:
    app: auth
  ports:
    - name: auth
      protocol: TCP
      port: 3000
      targetPort: 3000

但我不確定我是否還必須定義env另一個MYSQL_URI?就像是:

    - name: MYSQL_URI
      value: 'mysql://auth-mongo-srv:3306/auth'

答案1

在加密 mysql 資料庫的使用者名稱和密碼時,不需要在 yaml 檔案中為 MYSQL_URI 建立單獨的環境變數。但是,當您在應用程式程式碼中引用此資料庫時,您需要使用 MYSQL_URI 和此加密資料來連接到 Mysql DB。

請看一下這個關聯供 yaml 檔參考。

相關內容