应用管理集成了资源、安全、监控、事件、运维和发布等多种功能,适用于需要快速创建应用的开发人员及需统一管理资源的运维团队,有效提升运维工作的自动化水平和效率。如果您的代码存放在Git仓库,需要通过应用管理直接管理时,请参见本文操作通过Git仓库创建应用来实现。
背景信息
使用Git仓库创建应用前,您需了解Cloud Native Buildpacks (CNB) 开源技术。CNB的设计目标是为开发者提供一种更高效、更安全的方式,将代码转换为能够在任何环境中运行的容器镜像。
该技术支持多种编程语言和框架,并能够根据应用的需求自动选择合适的运行时和库,从而确保应用在不同环境间的一致性。此外,CNB通过分层镜像优化构建时间和存储效率,使得更新和维护变得更加高效和灵活。更多信息,请参见Cloud Native Buildpacks。
功能说明
应用管理支持通过Git仓库创建应用。其功能说明如下:
用户提供一个代码仓库地址,并授权应用管理访问。应用管理将代码仓库克隆到构建服务器后,使用从代码仓库构建容器镜像并上传到容器镜像服务(ACR),再按照用户指定的参数创建一台ECS云服务器,在云服务器上部署Docker运行环境并运行容器应用。
在代码仓库中的代码更新后,用户可以在应用管理中一键更新应用程序。应用管理将从远端拉取最新的代码构建并更新容器镜像,并运行新版本的容器应用。
应用管理也支持修改云服务器的配置,包括实例规格和公网带宽。
限制条件
仅支持创建单ECS实例的应用,且新建ECS实例操作系统为Alibaba Cloud Linux 3。
支持GitHub和Gitee托管平台上的公有代码仓库或私有代码仓库,同时,代码仓库需包含受支持的编程语言,即Java、Python、Go、Node.js、Ruby和PHP,才可以直接进行应用部署。
代码仓库必须符合Buildpacks要求才能够被正常构建和运行。
例如,Java项目需包含
pom.xml
或gradle.xxx
;Python项目需包含Procfile
来指定容器的启动命令。说明请查看您的代码仓库是否符合要求,是否需要增加一些配置文件确保应用代码正常构建和运行。
操作步骤
进入系统运维管理OOS>应用管理页面。
在创建应用页签下,选择创建方式为通过Git仓库创建。
在应用来源区域,配置Git平台、Git仓库用户等参数。
授权给应用管理OAuth App以用户的代码平台账号身份访问代码仓库。
重要为了成功拉取代码,即使您部署的是公开的代码仓库,也需要进行授权。因为代码托管平台对非登录态的API调用有严格的流控限制,使用非登录态调用API很容易失败。
在应用信息和设置应用分组区域,设置应用名称、应用描述、应用分组部署地域和分组名称。
在应用配置区域,选择代码分支,并设置容器运行环境变量以及应用监听端口。
应用监听端口将作为PORT环境变量传递给应用进程,应用代码需要支持读取PORT环境变量并监听此端口,否则请填写应用代码默认监听的端口号。
在云服务器密码和云服务器配置区域,设置新建云服务器的初始密码,并选择云服务器付费模式、实例类型以及网络配置等。
查看费用明细后,单击创建。
说明构建应用需要一段时间,请您耐心等待。
应用部署成功后,在应用概览页签下的应用输出区域,查看应用访问入口,默认返回HTTP地址。
相关操作
快捷操作
快捷操作包含更新应用、更新应用程序、修改环境变量和修改云服务器配置操作。本示例以更新应用程序为例:
在应用概览的快捷操作区域,单击更新应用程序。
选择代码分支,更新应用程序。
如果分支不变,分支的最新Git Commit必须变化才能更新。
预览参数已修改,然后提交更新。
创建新分组
如果应用是从Git仓库创建,创建新应用分组也必须基于相同的代码仓库。用户可以选择代码分支进行部署,后续步骤和创建应用一致。
常见问题
通过Git代码仓库构建应用失败了如何处理,更多信息,请参见常见问题。