iT邦幫忙

2023 iThome 鐵人賽

DAY 18
0

前言

在 Kubernetes 中,ConfigMap 和 Secret 是兩個重要的資源類型,用於管理應用程式的配置資訊和敏感數據。本篇教程將逐步引導您如何創建、使用和管理 ConfigMap 和 Secret,並提供相關的 YAML 配置範例。

ConfigMap

創建 ConfigMap

創建 configmap.yaml 檔案,內容如下:

apiVersion: v1
kind: ConfigMap
metadata:
  name: my-configmap
data:
  app.config: |
    DATABASE_URL=example.com
    API_KEY=my-api-key

執行以下命令以創建 ConfigMap:

$ kubectl apply -f configmap.yaml

在應用程式中使用 ConfigMap

創建一個 Pod 的 pod.yaml 檔案,並在其中使用 ConfigMap:

apiVersion: v1
kind: Pod
metadata:
  name: my-app-pod
spec:
  containers:
    - name: my-app-container
      image: my-app-image
      envFrom:
        - configMapRef:
            name: my-configmap

執行以下命令以創建 Pod:

$ kubectl apply -f pod.yaml

Secret

創建 Secret

創建 secret.yaml 檔案,內容如下:

apiVersion: v1
kind: Secret
metadata:
  name: my-secret
type: Opaque
data:
  username: dXNlcm5hbWU=
  password: cGFzc3dvcmQ=

注意:username 和 password 的值需要使用 Base64 編碼。

執行以下命令以創建 Secret:

$ kubectl apply -f secret.yaml

在應用程式中使用 Secret

創建一個 Pod 的 pod.yaml 檔案,並在其中使用 Secret:

apiVersion: v1
kind: Pod
metadata:
  name: my-app-pod
spec:
  containers:
    - name: my-app-container
      image: my-app-image
      env:
        - name: USERNAME
          valueFrom:
            secretKeyRef:
              name: my-secret
              key: username
        - name: PASSWORD
          valueFrom:
            secretKeyRef:
              name: my-secret
              key: password

執行以下命令以創建 Pod:

$ kubectl apply -f pod.yaml

總結

通過這個詳細教程,您已經學會了如何創建、使用和管理 Kubernetes 中的 ConfigMap 和 Secret。這兩個資源類型能夠幫助您管理應用程式的配置和敏感資料,確保您的應用程式在安全和可配置的環境中運行。


上一篇
[Day17]在 Minikube 中使用 Ingress:實現應用程式的網路訪問
下一篇
[Day19]Minikube網路服務
系列文
在open source環境,建置container環境及k8s(Minikube)的API佈署環境30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言