17.2.2. 第 2 步:使用服务
现在,定义了服务和端点,请通过在适当的容器中设置环境变量,授予适当的 pod 访问凭证以使用该服务:
kind: "DeploymentConfig" apiVersion: "v1" metadata: name: "my-app-deployment" spec: 1 strategy: type: "Rolling" rollingParams: updatePeriodSeconds: 1 2 intervalSeconds: 1 3 timeoutSeconds: 120 replicas: 2 selector: name: "frontend" template: metadata: labels: name: "frontend" spec: containers: - name: "helloworld" image: "origin-ruby-sample" ports: - containerPort: 3306 protocol: "TCP" env: - name: "MYSQL_USER" value: "${MYSQL_USER}" 4 - name: "MYSQL_PASSWORD" value: "${MYSQL_PASSWORD}" 5 - name: "MYSQL_DATABASE" value: "${MYSQL_DATABASE}" 6
外部数据库环境变量
在您的应用程序中使用外部服务与使用内部服务类似。您的应用程序将被分配该服务的环境变量,以及上一步中的凭据的其他环境变量。例如,MySQL 容器接收以下环境变量:
-
EXTERNAL_MYSQL_SERVICE_SERVICE_HOST=<ip_address>
-
EXTERNAL_MYSQL_SERVICE_SERVICE_PORT=<port_number>
-
MYSQL_USERNAME=<mysql_username>
-
MYSQL_PASSWORD=<mysql_password>
-
MYSQL_DATABASE_NAME=<mysql_database>
应用程序负责从环境中读取服务的协调和凭证,并通过 服务与数据库建立连接。