这是一个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 数据库。
请浏览此关联用于 yaml 文件参考。