Как смонтировать файл свойств в configmap Kubernetes, используя манифест yaml - PullRequest
0 голосов
/ 29 марта 2020

Я использую миникуб на windows 10 и пытаюсь протестировать Kubernetes ConfigMap как с литеральным типом, так и с внешним типом файла. Сначала я создаю нижеприведенный файл yaml для создания ConfigMap.

apiVersion: v1
kind: ConfigMap  
metadata:
  name: simple-config
data:  
  mysql_root_password: password
  mysql_password: password
  mysql_database: test

---
apiVersion: v1
kind: Pod
metadata:
  name: blog-db  
  labels:
    app: blog-mysql  
spec:
  containers:
  - name: blog-mysql
    image: mysql:latest
    env:  
      - name: MYSQL_ROOT_PASSWORD
        valueFrom: 
          configMapKeyRef:
            name: simple-config
              key: mysql_root_password
      - name: MYSQL_PASSWORD
        valueFrom: 
          configMapKeyRef:
            name: simple-config 
            key: mysql_password
      - name: MYSQL_DATABASE
        valueFrom: 
          configMapKeyRef:
            name: simple-config
            key: mysql_database
    ports:
      - containerPort: 3306

Приведенный выше файл конфигурации config не выдает ошибок. Работает успешно. На этот раз я пытаюсь проверить конфигурационный файл kubernetes с помощью файла.

== configmap.properties

mysql_root_password=password
mysql_password=password
mysql_database=test

Но я застрял в этой части. В большинстве примеров configmap используется команда kubectl с параметром --from-file, как показано ниже:

kubectl create configmap simple-config --from-file=configmap.properties

Но я понятия не имею, как смонтировать файл свойств с помощью манифестатора файла манифеста yaml. Любой совет?

1 Ответ

2 голосов
/ 29 марта 2020

Вы не можете напрямую смонтировать файл свойств в модуле без предварительного создания ConfigMap из файла свойств. Вы можете создать configMap из файла env, как показано ниже

kubectl create configmap simple-config \
       --from-env-file=configmap.properties
...