加载中...

K8s 通过Comfigmap导入ENV


一般情况下服务env是直接通过yaml文件导入的类似 当时当我们多个服务同时需要这个配置的时候 如果单一配置 后面修改的话就比较麻烦

env:
  - name: LOG_DIR
    value: /var/log/nginx

我们可以使用configmap的方法先声明配置 然后通过env传入pod

kind: ConfigMap
apiVersion: v1
metadata:
  name: test
data:
  mysql.db.name: test
  mysql.host: 192.168.0.10
  mysql.password: test
  mysql.port: '3306'
  mysql.user: test

然后我们在yaml文件中指定

            - name: MYSQL_SERVICE_DB_NAME
              valueFrom:
                configMapKeyRef:
                  name: test
                  key: mysql.db.name
            - name: MYSQL_SERVICE_HOST
              valueFrom:
                configMapKeyRef:
                  name: test
                  key: mysql.host
            - name: MYSQL_SERVICE_PORT
              valueFrom:
                configMapKeyRef:
                  name: test
                  key: mysql.port
            - name: MYSQL_SERVICE_USER
              valueFrom:
                configMapKeyRef:
                  name: test
                  key: mysql.user
            - name: MYSQL_SERVICE_PASSWORD
              valueFrom:
                configMapKeyRef:
                  name: test
                  key: mysql.password

这样后面就算修改我们只需要修改configmap就可以 服务会自己读配置文件中的内容


文章作者: huhuhahei
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 huhuhahei !
评论
  目录