本文使用简明扼要的语言介绍如何在 Oracle Cloud Infrastructure (OCI) 上部署 J**A 应用。 特别强调在 OCI 的 Ampere A1 计算平台上将 J**A 应用部署为容器的过程。 此过程不仅涉及容器的操作,还涉及 Oracle Linux 8 的使用0 中提供了一组新的容器工具,例如 podman。 创建 Ampere A1 计算实例。
构建一个管理待办事项的 j**a EE 应用程序。
将应用程序部署到 Tomcat 9。
将应用程序连接到数据库,并将其部署为 Pod 管理。
运行和测试应用程序。
清理部署。 Oracle 免费套餐(试用版)、付费或 livelabs 云帐户。
熟悉 OCI 控制台。
网络概述。 熟悉隔间。
容器和 podman 的基本概念知识。
保留 SSH 密钥。 如果没有,则需要生成 SSH 密钥。
接下来,本文详细介绍了设置环境的步骤,以及如何在云区间中部署和配置 JAA EE 应用程序。 这不仅包括基础架构的设置,还包括如何创建区间、配置虚拟云网络 (VCN) 等关键步骤,以确保整个环境的隔离和安全性。 通过本文,企业可以快速了解如何在云平台上部署和管理应用,实现业务的云化和全球化。 无论是云服务器、云存储服务的选型,还是海外云服务器和云服务的需求,本指南都提供了全面的解决方案,帮助企业轻松实现海外战略。 在本节中,我们将深入探讨如何创建 Ampere A1 计算实例,这是实现应用程序部署的关键步骤。 要创建 Ampere A1 计算实例,请使用控制台左上角的导航菜单,然后选择计算实例。
启动实例创建过程。
确认您位于“appdev 隔间”中。
单击创建实例。
在创建实例页面上,您可以创建新实例并配置新的网络资源,例如虚拟云网络 (VCN) 和 Internet 网关 (IG)。
将实例命名为“j**aapp”。
更新映像选择以使用 Oracle Linux 8 或更高版本。
单击“更改形状”按钮以查看可用的计算形状。
为实例配置镜像。
单击“更改映像”按钮以查看可用的操作系统映像。
选择 Oracle Linux 8 或更高版本。
配置实例的资源。
在形状系列选择中选择 Ampere Arm 基础处理器。
从带有 Ampere Arm 基础处理器的形状列表中,选择vm.standard.a1.flex
形状。 Ampere A1 的形状很灵活,您可以修改内核数量和内存量。 为 VM 选择 1 个核心和 6 GB 内存。
选择您的网络选项。 为下一个云部署创建新的 VCN 和子网。 请确保为您的实例分配一个公有 IP 地址。
生成和 SSH 密钥对。 此步骤是可选的,但强烈建议在以后的维护和升级中执行。 如果您已经有密钥对,也可以携带您的公钥。 如果您想了解如何生成 SSH 密钥,请参阅“生成 SSH 密钥”教程。
单击“创建”以创建网络资源并启动计算实例。
通过以上步骤,即使是不熟悉云服务的中小企业也可以轻松完成云服务器的配置和部署。 本节不仅为企业提供了如何选择云服务器、云存储服务、配置海外云服务器的具体指导,还涵盖了如何支持业务上云和海外的全方位解决方案。
本部分重点介绍如何使应用程序可从 Internet 访问,这需要打开应用程序将使用的端口。 你将为云网络配置安全列表,为计算实例配置防火墙规则,使应用程序能够发送和接收流量。 安全列表充当实例的虚拟防火墙,其入站和出站规则指定允许进出的流量类型。 安全列表在子网级别配置,并应用于该子网中的所有网络元素。 您的网络附带一个默认安全列表,其中包含一组初始规则。 默认安全列表允许您使用 SSH 连接到您的实例,并使您的实例能够对任何目标进行出站网络调用。 导航到已创建的实例的详细信息页面。 在“计算实例”下,单击您创建的实例。
通过单击子网,导航到实例附加到的子网。
在“子网”页面,单击“默认安全列表”,查看详细信息并进行配置。
单击“添加入站规则”以添加新规则,以允许与该规则匹配的入站流量。
添加入站规则以允许端口 8080 上的传入流量。
将获取 CIDRsource cidr设置为.。这允许来自所有 **.
设置目标端口范围destination port range设置为。这会将目标设置为仅
港口。 该规则现在允许使用来自所有 ** 的流量
港口。 这正是我们所需要的,以便可以从任何地方访问我们的应用程序。
提供说明。
通过上述步骤,即使是刚接触云计算的企业也可以轻松实现云服务器的网络配置。 该部分不仅帮助企业了解如何开放和管理云服务器端口,还为云服务提供安全性,以确保应用程序能够安全有效地与外界通信。 这对于企业上云迁移和海外业务的顺利进行至关重要。
防火墙规则控制进出实例的数据包级流量。 您可以直接在实例本身上配置防火墙规则,为系统提供额外的安全层。 导航到已创建的实例的详细信息页面。 在“计算实例”下,单击您创建的实例。
复制实例的公有 IP 地址。
通过SSH方式登录实例。 使用您自己生成的密钥或在实例创建过程中提供的密钥。 使用 Oracle Linux 操作系统的实例的默认用户名是 OPC。
运行 firewall configuration 命令。 这将修改实例本身的防火墙,以公开端口 8080 并接受传入流量。
要运行此应用程序,您首先需要准备一个 Ampere A1 计算实例,并安装必要的软件包,例如容器工具和 git。 然后,克隆存储库并使用包含的 m**en pomXML 来构建应用程序。 最后,使用容器工具启动 MySQL 和 Tomcat docker 容器。 Oracle Linux 8 使用 Podman 来运行和管理容器。 Podman 是一个无守护进程容器引擎,用于在 Linux 系统上开发、管理和运行 Open Container Initiative (OCI) 容器和容器映像。 podman 提供了一个与 Docker 兼容的命令行应用程序,可以用作 Docker 的替代品。 安装 podman-docker 软件包可提供对 podman 的 docker 命令的透明调用。 通过SSH方式登录实例。 使用您自己生成的密钥或在实例创建过程中提供的密钥。 使用 Oracle Linux 操作系统的实例的默认用户名是 OPC。
安装 container-tools 模块,该模块将拉取与容器工作相关的所有工具。
首先,使用 SSH 登录到计算实例并克隆存储库。
J**Web 应用程序打包为 Web 应用程序归档 (WAR) 文件。 war 文件是一个 zip 文件,其中包含向 servlet 容器(例如 Tomcat)描述应用程序的元数据。 在此示例中,应用程序的 war 文件是使用 Apache M**EN 构建的。 若要生成应用程序,请运行以下命令。 请确保从克隆源文件的位置运行该命令。
此命令创建一个目标目录和其中的 war 文件。 请注意,我们不是在安装 m**en,而是在容器内运行构建工具。 通过上述步骤,您可以轻松配置和管理实例的安全设置,同时确保您的 J**a EE 应用程序在 Ampere A1 计算平台上平稳运行。 这些步骤不仅涵盖了基本的安全配置,还涵盖了如何使用现代容器技术来构建和部署应用程序,使企业能够更高效、更安全地执行其云战略。 此应用程序使用 Tomcat Servlet 容器和 MySQL 数据库。 Tomcat 和 MySQL 数据库都支持 Ampere A1 计算平台使用的 ARM64v8 架构。 使用 podman 创建 pod。
在 Pod 中启动数据库容器。
对于 MySQL 数据库,数据库初始化脚本提供给在启动时创建所需数据库用户和表的容器。 这是通过将主机放在/src/main/sql
目录复制到容器中/docker-entrypoint-initdb.d
来实现它。 您在此处使用的官方 mysql 映像配置为在此目录中启动时执行.sql
文件。 有关更多选项,包括如何导出和备份数据,请参阅文档。 在 Tomcat 服务器上部署您构建的 war 文件和应用程序。
数据库连接信息和应用程序通过src/main/resources/todo.properties
提供给 Apache Tomcat 容器。 JDBC URL 使用 localhost 作为 MySQL 服务器主机。 这是因为同一 Pod 中的容器可以使用 localhost 相互通信。 应用程序 war 文件作为装载提供给容器。
Tomcat 在启动时部署应用程序,并且与主机的端口映射使应用程序可以通过计算实例的公共 IP 地址进行访问。
在浏览器中输入计算实例的公共 IP 地址和端口 8080。 您应该能够看到该应用程序。 http://:8080/todo/
Podman 容器可以像 Docker 容器一样进行检查(Podman 甚至可以设置为 Docker 的别名)。 以下是一些常用的检查容器的命令:podman ps -pa
显示运行和退出的容器,以及它们所属的 Pod。
podman logs -f todo-mysql
显示指定的容器(在本例中为todo-mysql
)。按 Ctrl+C 退出。
通过上述步骤,您可以在 Ampere A1 计算平台上顺利部署和运行 J**a EE 应用程序。 本节不仅介绍了如何使用现代容器技术启动和管理数据库和 Web 服务器,还提供了实用的故障排除技巧,以确保您的应用程序高效可靠地运行。 这对于希望在云平台上快速部署和扩展业务的企业来说至关重要。 作为 Oracle 优秀合作伙伴,Agilewing 彻底改变了用户体验 Oracle 云服务的方式。 Agilewing提供简化的开户流程和一流的技术支持,让用户无需繁琐的开户流程,以及复杂的操作。 一站式服务,快速完成云服务的开通和开通,轻松获取Oracle云的各项服务。 AgileWing 的 AgileCDN 集成 CDN 服务与 OCI 云基础服务完美结合,为业务国际化提供全球内容加速解决方案。 客户可以通过全球 2,800 多个 POP 节点和 7,000 多个直连点享受网络效率和稳定性。 这意味着无论您的企业位于世界的哪个地方,Agilewing都能确保其高效运行。 Agilewing 利用 Oracle 云的优势来构建云服务、迁移云并将业务扩展到海外,无需自行研究和探索 Oracle 云服务的复杂过程。 这种合作模式为客户提供了经济高效的解决方案,使他们能够专注于核心业务,同时享受 Oracle 云的高性能和安全性。 Oracle 云服务是一个充满潜力的领域,它具有高性能、安全性和全球一致的服务标准,可提供无限可能。 借助 Agilewing 的专业服务,用户和企业都可以轻松进入这个新世界,并充分利用 Oracle 云的所有优势。 立即使用 Agilewing 开启您的 Oracle 云服务之旅,探索创新和性能的新时代。