18.2.2. 第 2 步: 使用服务
现在,定义了服务和端点,请通过在适当的容器中设置环境变量,授予适当的 pod 访问凭证以使用该服务:
kind: "DeploymentConfig"
apiVersion: "v1"
metadata:
name: "my-app-deployment"
spec:
strategy:
type: "Rolling"
rollingParams:
updatePeriodSeconds: 1
intervalSeconds: 1
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}"
-
name: "MYSQL_PASSWORD"
value: "${MYSQL_PASSWORD}"
-
name: "MYSQL_DATABASE"
value: "${MYSQL_DATABASE}"
外部数据库环境变量
在您的应用程序中使用外部服务与使用内部服务类似。您的应用程序将被分配该服务的环境变量,以及上一步中的凭据的其他环境变量。例如,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>
应用程序负责从环境中读取服务的协调和凭证,并通过 服务与数据库建立连接。