Merge pull request #5466 from YuxiJin-tobeyjin/inject-env2
ZTE-SH-CN-define-environment-variable-container
This commit is contained in:
		
						commit
						c04d4c2a3e
					
				|  | @ -0,0 +1,72 @@ | ||||||
|  | --- | ||||||
|  | title: 为容器设置环境变量 | ||||||
|  | --- | ||||||
|  | 
 | ||||||
|  | {% capture overview %} | ||||||
|  | 
 | ||||||
|  | 本页将展示如何为kubernetes Pod下的容器设置环境变量。 | ||||||
|  | 
 | ||||||
|  | {% endcapture %} | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | {% capture prerequisites %} | ||||||
|  | 
 | ||||||
|  | {% include task-tutorial-prereqs.md %} | ||||||
|  | 
 | ||||||
|  | {% endcapture %} | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | {% capture steps %} | ||||||
|  | 
 | ||||||
|  | ## 为容器设置一个环境变量 | ||||||
|  | 
 | ||||||
|  | 创建Pod时,可以为其下的容器设置环境变量。通过配置文件的`env`或者`envFrom` 字段来设置环境变量。 | ||||||
|  | 
 | ||||||
|  | 本示例中,将创建一个只包含单个容器的Pod。Pod的配置文件中设置环境变量的名称为`DEMO_GREETING`, | ||||||
|  | 其值为`"Hello from the environment"`。下面是Pod的配置文件内容: | ||||||
|  | 
 | ||||||
|  | {% include code.html language="yaml" file="envars.yaml" ghlink="/docs/tasks/inject-data-application/envars.yaml" %} | ||||||
|  | 
 | ||||||
|  | 1. 基于YAML文件创建一个Pod: | ||||||
|  | 
 | ||||||
|  |        kubectl create -f https://k8s.io/docs/tasks/inject-data-application/envars.yaml | ||||||
|  | 
 | ||||||
|  | 1. 获取一下当前正在运行的Pods信息: | ||||||
|  | 
 | ||||||
|  |        kubectl get pods -l purpose=demonstrate-envars | ||||||
|  | 
 | ||||||
|  |     查询结果应为: | ||||||
|  | 
 | ||||||
|  |         NAME            READY     STATUS    RESTARTS   AGE | ||||||
|  |         envar-demo      1/1       Running   0          9s | ||||||
|  | 
 | ||||||
|  | 1. 进入该Pod下的容器并打开一个命令终端: | ||||||
|  | 
 | ||||||
|  |        kubectl exec -it envar-demo -- /bin/bash | ||||||
|  | 
 | ||||||
|  | 1. 在命令终端中通过执行`printenv`打印出环境变量。 | ||||||
|  | 
 | ||||||
|  |        root@envar-demo:/# printenv | ||||||
|  | 
 | ||||||
|  |     打印结果应为: | ||||||
|  | 
 | ||||||
|  |         NODE_VERSION=4.4.2 | ||||||
|  |         EXAMPLE_SERVICE_PORT_8080_TCP_ADDR=10.3.245.237 | ||||||
|  |         HOSTNAME=envar-demo | ||||||
|  |         ... | ||||||
|  |         DEMO_GREETING=Hello from the environment | ||||||
|  | 
 | ||||||
|  | 1. 通过键入`exit`退出命令终端。 | ||||||
|  | 
 | ||||||
|  | {% endcapture %} | ||||||
|  | 
 | ||||||
|  | {% capture whatsnext %} | ||||||
|  | 
 | ||||||
|  | * 有关环境变量的更多信息,请参阅[这里](/docs/tasks/configure-pod-container/environment-variable-expose-pod-information/)。 | ||||||
|  | * 有关如何通过环境变量来使用Secret,请参阅[这里](/docs/user-guide/secrets/#using-secrets-as-environment-variables)。 | ||||||
|  | * 关于[EnvVarSource](/docs/api-reference/{{page.version}}/#envvarsource-v1-core)资源的信息。 | ||||||
|  | 
 | ||||||
|  | {% endcapture %} | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|  | {% include templates/task.md %} | ||||||
|  | @ -0,0 +1,13 @@ | ||||||
|  | apiVersion: v1 | ||||||
|  | kind: Pod | ||||||
|  | metadata: | ||||||
|  |   name: envar-demo | ||||||
|  |   labels: | ||||||
|  |     purpose: demonstrate-envars | ||||||
|  | spec: | ||||||
|  |   containers: | ||||||
|  |   - name: envar-demo-container | ||||||
|  |     image: gcr.io/google-samples/node-hello:1.0 | ||||||
|  |     env: | ||||||
|  |     - name: DEMO_GREETING | ||||||
|  |       value: "Hello from the environment" | ||||||
		Loading…
	
		Reference in New Issue