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.8. 使用 devfile 创建应用程序
使用带有 'odo' 的 devfile 创建应用程序只是一个技术预览功能。技术预览功能不被红帽产品服务等级协议 (SLA) 支持,且可能在功能方面有缺陷。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的详情,请参阅 https://access.redhat.com/support/offerings/techpreview/。
2.8.1. 关于 odo 中的 devfile 复制链接链接已复制到粘贴板!
devfile 是一个可移植的文件,它描述了您的开发环境。使用 devfile,您可以定义一个可移植的开发环境而无需重新配置。
使用 devfile,您可以描述开发环境,如源代码、IDE 工具、应用程序运行时和预定义的命令。要了解更多关于 devfile 的信息,请参阅 devfile 文档。
使用 odo
,您可以从 devfiles 创建组件。当使用 devfile 创建组件时,odo
会将 devfile 转换为一个由 OpenShift Container Platform、Kubernetes 或 Docker 上运行的多个容器组成的工作区。odo
自动使用默认的 devfile registry,但用户可以添加自己的 registry。
2.8.2. 使用 devfile 创建 Java 应用程序 复制链接链接已复制到粘贴板!
2.8.3. 先决条件 复制链接链接已复制到粘贴板!
-
已安装了
odo
。 -
必须知道您的 ingress 域集群名称。如果不知道,请联络您的集群管理员。例如,
apps-crc.testing
是 Red Hat CodeReady Containers 的集群域名。 已在
odo
中启用了实验模式。-
要在
odo
中启用实验模式,运行odo preference set Experimental true
或使用环境变量odo config set --env ODO_EXPERIMENTAL=true
。
-
要在
2.8.3.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.8.3.2. 列出可用的 devfile 组件 复制链接链接已复制到粘贴板!
使用 odo
,可以显示集群中的所有可用组件。可用的组件取决于集群的配置。
流程
要列出集群中可用的 devfile 组件,请运行:
odo catalog list components was
$ odo catalog list components was
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出列出了可用的
odo
组件:Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.8.3.3. 使用 devfile 部署 Java 应用程序 复制链接链接已复制到粘贴板!
在这一部分,您将了解如何使用 devfile 部署使用 Maven 和 Java 8 JDK 的 Java 示例项目。
流程
创建一个目录来存储组件的源代码:
mkdir <directory-name>
$ mkdir <directory-name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建名为
myspring
的 Spring Boot 组件类型的组件配置并下载其示例项目:odo create java-spring-boot myspring --downloadSource
$ odo create java-spring-boot myspring --downloadSource
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 上面的命令会产生以下输出:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow odo create
命令从记录的 devfile registry 中下载相关的devfile.yaml
文件。列出目录的内容以确认下载了 devfile 和示例 Java 应用程序:
ls
$ ls
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 上面的命令会产生以下输出:
README.md devfile.yaml pom.xml src
README.md devfile.yaml pom.xml src
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建一个 URL 以访问部署的组件:
odo url create --host apps-crc.testing
$ odo url create --host apps-crc.testing
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 上面的命令会产生以下输出:
✓ URL myspring-8080.apps-crc.testing created for component: myspring To apply the URL configuration changes, please use odo push
✓ URL myspring-8080.apps-crc.testing created for component: myspring To apply the URL configuration changes, please use odo push
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意创建 URL 时必须使用集群主机名。
将组件推送到集群:
odo push
$ odo push
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 上面的命令会产生以下输出:
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 上面的命令会产生以下输出:
Found the following URLs for component myspring NAME URL PORT SECURE myspring-8080 http://myspring-8080.apps-crc.testing 8080 false
Found the following URLs for component myspring NAME URL PORT SECURE myspring-8080 http://myspring-8080.apps-crc.testing 8080 false
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用生成的 URL 查看部署的应用程序。
curl http://myspring-8080.apps-crc.testing
$ curl http://myspring-8080.apps-crc.testing
Copy to Clipboard Copied! Toggle word wrap Toggle overflow