This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.2.7. 创建带有数据库的应用程序
这个示例描述了如何部署和连接数据库到前端应用程序。
先决条件
-
已安装了
odo
。 -
已安装
oc
客户端。 - 有一个正在运行的 OpenShift Container Platform 集群。开发人员可以使用 CodeReady Containers (CRC) 来快速部署一个本地的 OpenShift Container Platform 集群。
- 服务目录被启用。
2.7.1. 创建一个项目 复制链接链接已复制到粘贴板!
创建一个项目来在一个独立的空间内保存源代码、测试并对库进行管理。
流程
登陆到一个OpenShift Container Platform集群。
odo login -u developer -p developer
$ odo login -u developer -p developer
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建一个项目:
odo project create myproject
$ odo project create myproject ✓ Project 'myproject' is ready for use ✓ New project created and now using project : myproject
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.7.2. 部署前端组件 复制链接链接已复制到粘贴板!
要创建并部署前端组件,请下载 Node.js 应用程序并使用 odo
将源代码推送到集群中。
流程
下载前端应用程序示例:
git clone https://github.com/openshift/nodejs-ex
$ git clone https://github.com/openshift/nodejs-ex
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将当前目录改为前端目录:
cd <directory-name>
$ cd <directory-name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 列出目录的内容,以查看前端是一个 Node.js 应用程序。
ls
$ ls assets bin index.html kwww-frontend.iml package.json package-lock.json playfield.png README.md server.js
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意前端组件使用解释语言 (Node.js) 编写,不需要构建它。
创建名为
frontend
的 Node.js 组件类型组件配置:odo create nodejs frontend
$ odo create nodejs frontend ✓ Validating component [5ms] Please use `odo push` command to create the component with source deployed
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建一个 URL 来访问前台接口。
odo url create myurl
$ odo url create myurl ✓ URL myurl created for component: nodejs-nodejs-ex-pmdp
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将组件推送到 OpenShift Container Platform 集群。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.7.3. 以互动模式部署数据库 复制链接链接已复制到粘贴板!
odo 提供了一个简化部署的命令行互动模式。
流程
运行互动模式并回答提示:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
您的密码或用户名将作为环境变量传递给前端的应用程序。
2.7.4. 手动部署数据库 复制链接链接已复制到粘贴板!
列出可用服务:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 选择
mongodb-persistent
服务类型,并查看所需参数:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 指定所需参数,并等待数据库部署:
odo service create mongodb-persistent --plan default --wait -p DATABASE_SERVICE_NAME=mongodb -p MEMORY_LIMIT=512Mi -p MONGODB_DATABASE=sampledb -p VOLUME_CAPACITY=1Gi
$ odo service create mongodb-persistent --plan default --wait -p DATABASE_SERVICE_NAME=mongodb -p MEMORY_LIMIT=512Mi -p MONGODB_DATABASE=sampledb -p VOLUME_CAPACITY=1Gi
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.7.5. 将数据库连接到前端应用程序 复制链接链接已复制到粘贴板!
将数据库连接到前端服务中:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 查看 Pod 中的应用程序和数据库的环境变量:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在浏览器中打开 URL ,并在右下角记录数据库配置:
odo url list
$ odo url list
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.7.6. 删除应用程序 复制链接链接已复制到粘贴板!
删除应用程序将删除与应用程序关联的所有组件。
流程
列出当前项目中的应用程序:
odo app list
$ odo app list The project '<project_name>' has the following applications: NAME app
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 列出与应用程序关联的组件。这些组件将随应用程序一起删除:
odo component list
$ odo component list APP NAME TYPE SOURCE STATE app nodejs-nodejs-ex-elyf nodejs file://./ Pushed
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 删除应用程序:
odo app delete <application_name>
$ odo app delete <application_name> ? Are you sure you want to delete the application: <application_name> from project: <project_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
使用
Y
确认删除。您可以使用-f
标记来阻止确认提示。