Giriş
Komut satırı yerine declarative yöntemi kullanmak istersek kind: ConfigMap kullanılır--from-env-file seçeneği
Söz dizimi şöyle
k create configmap <configmap-name> --from-env-file=<your-file-name>
Örnek
Elimizde mysql.txt diye şöyle bir dosya olsun
MYSQL_ROOT_HOST=root MYSQL_ROOT_PASSWORD=password
Şöyle yaparız
k create configmap mysql-config --from-env-file=/root/mysql-env.txt
--from-file seçeneği
Söz dizimi şöyle. Yani --from-file ile dizin ismi veya bir dosya ismi verilebilir. Eğer dizin ismi verilirse o dizindeki tüm txt dosyalarını ConfigMap olarak yükler.
k create configmap user-config \
--from-file=<directory-name> or <file-name>Örnek
Elimizde şöyle bir dizim olsun
root/config-files/
|- user-data.txt
|- admin-info.txt
# user-data.txt
username: superuser
password: admin123
# admin-info.txt
city: Nobeoka
state: Miyazaki
country: Japanve tüm dosyaları ConfigMap yapalım
# Configmap with directory k create configmap user-config --from-file=/root/config-files
ConfigMap'e bakalım. Çıktısı şöyle. Burada user-config bir volume ve içinde de iki tane dosya var
> k get configmap user-config -o yaml
apiVersion: v1
data:
admin-info.txt: |
username: superuser
password: admin123
user-data.txt: |
city: Nobeoka
state: Miyazaki
country: Japan
kind: ConfigMap
metadata:
creationTimestamp: "2022-08-07T09:38:22Z"
name: user-config
namespace: default
resourceVersion: "2007"
uid: 915e805a-cb55-4309-977a-566b7a8ed6acÖrnek
Şöyle yaparız
$ kubectl create configmap foobar —from-file=config.js$ kubectl get configmap foobar -o yaml
--from-literal seçeneği
Söz dizimi şöyle
k create configmap <configmap-name> --from-literal=<key>=value \
--from-literal=<key>=value
Örnek
Şöyle yaparız
k create configmap mysql-config --from-literal=MYSQL_ROOT_HOST=root
--from-literal=MYSQL_ROOT_PASSWORD=password
Hiç yorum yok:
Yorum Gönder