diff --git a/content/zh-cn/docs/tasks/inject-data-application/define-interdependent-environment-variables.md b/content/zh-cn/docs/tasks/inject-data-application/define-interdependent-environment-variables.md index 9567fc2e4e8..3025732a17f 100644 --- a/content/zh-cn/docs/tasks/inject-data-application/define-interdependent-environment-variables.md +++ b/content/zh-cn/docs/tasks/inject-data-application/define-interdependent-environment-variables.md @@ -17,10 +17,8 @@ in a Kubernetes Pod. ## {{% heading "prerequisites" %}} - {{< include "task-tutorial-prereqs.md" >}} - ## 为容器定义相互依赖的环境变量 {#define-an-environment-dependent-variable-for-a-container} -当创建一个 Pod 时,你可以为运行在 Pod 中的容器设置相互依赖的环境变量。 -设置相互依赖的环境变量,你就可以在配置清单文件的 `env` 的 `value` 中使用 $(VAR_NAME)。 +当创建一个 Pod 时,你可以为运行在 Pod 中的容器设置相互依赖的环境变量。 +若要设置相互依赖的环境变量,你可以在配置清单文件的 `env` 的 `value` 中使用 $(VAR_NAME)。 在本练习中,你会创建一个单容器的 Pod。 此 Pod 的配置文件定义了一个已定义常用用法的相互依赖的环境变量。 -下面是 Pod 的配置清单: +下面是此 Pod 的配置清单: {{< codenew file="pods/inject/dependent-envars.yaml" >}} - + 1. 依据清单创建 Pod: - ```shell - kubectl apply -f https://k8s.io/examples/pods/inject/dependent-envars.yaml - ``` - ``` - pod/dependent-envars-demo created - ``` - + + ```shell + kubectl apply -f https://k8s.io/examples/pods/inject/dependent-envars.yaml + ``` + ``` + pod/dependent-envars-demo created + ``` + + 2. 列出运行的 Pod: - ```shell - kubectl get pods dependent-envars-demo - ``` - ``` - NAME READY STATUS RESTARTS AGE - dependent-envars-demo 1/1 Running 0 9s - ``` + ```shell + kubectl get pods dependent-envars-demo + ``` + ``` + NAME READY STATUS RESTARTS AGE + dependent-envars-demo 1/1 Running 0 9s + ``` - + 3. 检查 Pod 中运行容器的日志: - ```shell - kubectl logs pod/dependent-envars-demo - ``` - ``` + ```shell + kubectl logs pod/dependent-envars-demo + ``` + ``` - UNCHANGED_REFERENCE=$(PROTOCOL)://172.17.0.1:80 - SERVICE_ADDRESS=https://172.17.0.1:80 - ESCAPED_REFERENCE=$(PROTOCOL)://172.17.0.1:80 - ``` + UNCHANGED_REFERENCE=$(PROTOCOL)://172.17.0.1:80 + SERVICE_ADDRESS=https://172.17.0.1:80 + ESCAPED_REFERENCE=$(PROTOCOL)://172.17.0.1:80 + ``` +请注意,`env` 列表中的顺序很重要。如果某环境变量定义出现在列表的尾部, +则在解析列表前部环境变量时不会视其为“已被定义”。 +这就是为什么 `UNCHANGED_REFERENCE` 在上面的示例中解析 `$(PROTOCOL)` 失败的原因。 + -* 进一步了解[环境变量](/zh-cn/docs/tasks/inject-data-application/environment-variable-expose-pod-information/). -* 参阅 [EnvVarSource](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#envvarsource-v1-core). +* 进一步了解[环境变量](/zh-cn/docs/tasks/inject-data-application/environment-variable-expose-pod-information/)。 +* 参阅 [EnvVarSource](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#envvarsource-v1-core)。