4.7. 连接到数据库
部署并连接一个 MongoDB 数据库,其中的 National -parks-app 应用存储位置信息。将 national-parks-app 应用程序标记为地图可视化工具的后端后,parksmap 部署会使用 OpenShift Container Platform 发现机制来自动显示地图。
先决条件
- 有访问 OpenShift Container Platform 集群的权限。
-
已安装 OpenShift CLI(
oc)。 - 您已部署了一个镜像。
流程
要连接到数据库,请输入以下命令:
$ oc new-app quay.io/centos7/mongodb-36-centos7:master --name mongodb-nationalparks -e MONGODB_USER=mongodb -e MONGODB_PASSWORD=mongodb -e MONGODB_DATABASE=mongodb -e MONGODB_ADMIN_PASSWORD=mongodb -l 'app.kubernetes.io/part-of=national-parks-app,app.kubernetes.io/name=mongodb'输出示例
--> Found container image dc18f52 (3 years old) from quay.io for "quay.io/centos7/mongodb-36-centos7:master" MongoDB 3.6 ----------- MongoDB (from humongous) is a free and open-source cross-platform document-oriented database program. Classified as a NoSQL database program, MongoDB uses JSON-like documents with schemas. This container image contains programs to run mongod server. Tags: database, mongodb, rh-mongodb36 * An image stream tag will be created as "mongodb-nationalparks:master" that will track this image --> Creating resources with label app.kubernetes.io/name=mongodb,app.kubernetes.io/part-of=national-parks-app ... imagestream.image.openshift.io "mongodb-nationalparks" created deployment.apps "mongodb-nationalparks" created service "mongodb-nationalparks" created --> Success
4.7.1. 创建 secret 复制链接链接已复制到粘贴板!
Secret 对象提供了一种机制来保存敏感信息,如密码、OpenShift Container Platform 客户端配置文件和私有源存储库凭证等。secret 将敏感内容与 Pod 分离。您可以使用卷插件将 secret 信息挂载到容器中,系统也可以使用 secret 代表 Pod 执行操作。以下流程添加了 secret nationalparks-mongodb-parameters,并将它挂载到 nationalparks 工作负载中。
先决条件
- 有访问 OpenShift Container Platform 集群的权限。
-
已安装 OpenShift CLI(
oc)。 - 您已部署了一个镜像。
流程
运行以下命令来创建 secret:
$ oc create secret generic nationalparks-mongodb-parameters --from-literal=DATABASE_SERVICE_NAME=mongodb-nationalparks --from-literal=MONGODB_USER=mongodb --from-literal=MONGODB_PASSWORD=mongodb --from-literal=MONGODB_DATABASE=mongodb --from-literal=MONGODB_ADMIN_PASSWORD=mongodb输出示例
secret/nationalparks-mongodb-parameters created要更新环境变量以将 mongodb secret 附加到
nationalpartks工作负载,请输入以下命令:$ oc set env --from=secret/nationalparks-mongodb-parameters deploy/nationalparks输出示例
deployment.apps/nationalparks updated要显示
nationalpartks部署的状态,请输入以下命令:$ oc rollout status deployment nationalparks输出示例
deployment "nationalparks" successfully rolled out要显示
mongodb-nationalparks部署的状态,请输入以下命令:$ oc rollout status deployment mongodb-nationalparks输出示例
deployment "mongodb-nationalparks" successfully rolled out