要将环境变量注入到Pod中,您可以执行以下操作:
Configmap
您可以创建ConfigMap
并配置您的Pod以使用它。
所需步骤:
- 创建
ConfigMap
- 使用ConfigMap更新/创建部署
- 测试
创建ConfigMap
我在下面提供了简单的ConfigMap
来存储您的变量:
apiVersion: v1
kind: ConfigMap
metadata:
name: example-config
data:
port: "12345"
要应用它并能够使用它,请调用以下命令:
$ kubectl create -f example-configmap.yaml
上面的ConfigMap
将创建值为port
的环境变量12345
。
检查是否成功创建了ConfigMap
:
$ kubectl get configmap
输出应如下所示:
NAME DATA AGE
example-config 1 21m
要获取详细信息,可以使用以下命令进行检查:
$ kubectl describe configmap example-config
输出:
Name: example-config
Namespace: default
Labels: <none>
Annotations: <none>
Data
====
port:
----
12345
Events: <none>
使用ConfigMap更新/创建部署
我提供了包含ConfigMap
的简单部署:
apiVersion: apps/v1 # for versions before 1.9.0 use apps/v1beta2
kind: Deployment
metadata:
name: nginx-deployment
spec:
selector:
matchLabels:
app: nginx
replicas: 2 # tells deployment to run 2 pods matching the template
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.7.9
envFrom:
- configMapRef:
name: example-config
ports:
- containerPort: 80
负责使用ConfigMap
的配置:
envFrom:
- configMapRef:
name: example-config
之后,您需要使用以下命令运行部署:
$ kubectl create -f configmap-test.yaml
并检查其是否正常工作:
$ kubectl get pods
输出:
NAME READY STATUS RESTARTS AGE
nginx-deployment-84d6f58895-b4zvz 1/1 Running 0 23m
nginx-deployment-84d6f58895-dp4c7 1/1 Running 0 23m
测试
要测试环境变量是否正常工作,您需要进入吊舱并进行自我检查。
为此,请调用命令:
$ kubectl exec -it NAME_OF_POD -- /bin/bash
请为您的变量提供变量NAME_OF_POD。
成功进入容器运行后:
$ echo $port
它应该显示:
root@nginx-deployment-84d6f58895-b4zvz:/# echo $port
12345
现在,您可以在pod中使用环境变量。
本文链接:https://www.f2er.com/3085261.html