通过Git创建服务

更新时间:2025-03-06 02:38:40

计算巢支持直接从GitHub、Gitee、公网GitLab、云效CodeUp导入仓库创建服务,对于开发者和入驻的服务商来说,该功能可以极大地降低服务创建门槛,并可以在较短时间内完成服务创建,后续开发者可以在该基础上进行服务的测试、更新以及上架云市场等。本文介绍如何通过Git创建服务。

前提条件

使用Git创建服务前,请确保您已经创建好对应的仓库。更多信息,请参见创建符合计算巢规范的Git仓库

功能概述

通过Git创建服务功能可以快速将用户的Git仓库转化为计算巢服务。实现零门槛接入,用户仅需在计算巢完成Git授权,导入仓库后进行基础配置即可。目前该功能支持多种场景和多种可选配置:

  • 支持的代码托管平台包括:GitHub、Gitee、公网GitLab、云效CodeUp,可以选择其中一种完成授权后导入仓库。

  • 支持多种部署场景

    • 可选 私有部署场景托管版场景

      服务类型

      服务定义

      说明

      私有部署服务

      在用户账号下部署资源和软件的服务。

      适用场景:适用于应用部署在用户账号内VPCPaaS&SaaS软件。

      全托管服务

      在服务创建者账号下部署资源和软件的服务。

      适用场景:适用于应用部署在服务商账号内VPCPaaS&SaaS服务。服务创建者对于用户的云资源和应用全权进行托管。计算巢支持用户独享资源的场景,包括托管版单租(资源完全独享)和托管版ack多租(资源按ack pod独享)两种模式

    • 支持多种应用运行时部署类型

      应用运行时

      部署类型

      参数名称

      含义

      容器

      Docker Compose

      Docker Compose Yaml 路径

      指定仓库中DockerCompose文件路径。

      Docker Compose Env 路径

      指定仓库中DockerCompose Env文件路径,若仓库中没有env文件,采用默认值(.env)即可。

      用户部署参数

      配置自定义环境变量参数,用户实际部署时动态填入。例如.env中配置了Password=test

      image.png

      这样用户在部署时可以填写自定义的Password,该值将用于替换.env中的变量值。

      Dockerfile

      Dockerfile 路径

      指定仓库中Dockerfile文件路径。

      用户部署参数

      指定Docker运行环境变量key。如docker run -e key=value,value为用户部署时填写的实际参数值。

      高级选项:Docker镜像构建参数

      指定Docker镜像构建参数。适用于Dockerfile 使用了多阶段 (multi-stage) 特性并且需在构建镜像前就设置环境变量的情况。

      Buildpacks

      用户部署参数

      指定Docker运行环境变量key。如docker run -e key=value,value为用户部署时填写的实际参数值。

      服务端口

      指定服务端口,服务正常部署后会通过ip:port的方式暴露出来。

      安全组入方向端口

      安全组入方向端口,可以理解为防火墙,根据软件配置,指定需要打开的端口号。

      K8s集群

      Helm Chart

      Chart 目录

      指定 Helm Chart 所在目录。用户可以选择仓库中的 Chart 目录来配置服务。

      Chart Values

      用于自定义 Chart 部署时的可变参数,常用于覆盖默认值。

      输出类型

      可以指定输出类型,包括Helm Chart自带的使用说明或自定义输出命令。

      Linux Shell

      SourceCode

      根目录

      支持指定源代码或应用的根目录。后续运行命令将在该目录下执行。

      用户部署参数

      可指定软件运行命令(脚本)中需要动态传入的参数名,用户部署时填写实际参数值。如下所示,配置参数名为MyPassword,用户实际部署时填写参数值,最后将作为环境变量PASSWORD的值。该环境变量可以在运行命令中引用,执行时会自动采用用户填入参数。

      image.png

      运行命令

      指定应用启动时需要运行的命令。

      基础镜像

      指定基础镜像,可以选择如 CentOS 7.9、Node.js 20、Docker 26 等。

      服务端口

      应用向外暴露使用的端口。

      安全组入方向端口

      防火墙的入向端口设置。

      超时时间

      设定运行命令的超时时间,以防止长时间未启动而导致资源浪费。

  • 支持托管构建ECS镜像:考虑到目前中国地区拉取Docker镜像会遇到各种网络问题导致失败,计算巢会将仓库中涉及的Docker镜像通过阿里云网络加速功能拉取到ECS实例,并构建为ECS镜像,以此避免Docker镜像拉取失败的问题。此镜像由计算巢托管,但会共享到用户的阿里云账号。

  • 支持通过代码仓库更新服务。当仓库有新提交后,可以直接通过代码更新服务,系统会自动拉取最新仓库构建服务。

操作步骤

  1. 登录计算巢控制台

  2. 在左侧导航栏中,选择我的服务,并在我的服务页面中选择我创建的服务,然后单击创建新服务

  3. 创建新服务界面,配置服务信息。

    1. 选择创建方式并设置仓库信息。

      配置项

      配置说明

      配置项

      配置说明

      选择创建服务的方式

      选择通过仓库创建服务

      仓库用户/组织

      若您的用户是在组织仓库中,您可以选择个人仓库或组织仓库名称。

      仓库名称

      选择您需要导入服务所在的仓库名称。

      仓库分支

      选择仓库下的分支信息。

      选择后,计算巢会自动检测您仓库下的资源描述文件,若未检测到文件信息,则无法进行下一步配置。

      image

    2. 选择仓库后,会自动弹出服务配置页,根据情况选择具体配置:

      由于lobe-chat支持docker-compose方式实现self-host的部署,故在这里选择对应的配置项即可。其中的用户部署参数支持将指定的Docker Compose Env中的环境变量进行参数化配置,指定后用户可以在实际部署实例时动态填写对应参数。填写完成后单击下一步:基本信息配置

      image.png

    3. 配置服务的基本信息。

      配置项

      配置说明

      配置项

      配置说明

      服务图标

      支持JPG、PNG格式。建议您上传的图片分辨率为192x192像素,以便保证展示效果。

      服务名称

      由中文、数字、英文及下划线(_)组成,长度在3~200个字符之间,一个中文字等于2个字符。

      系统会根据您的仓库信息默认生成一个名称,您可以选择不修改。

      服务简介

      简介长度在10~500个字符之间,一个中文字等于2个字符。

      版本描述

      版本描述长度在1~200个字符之间,一个中文字等于2个字符。建议包含具体的软件版本,同一服务下各个版本的描述不能相同。

      服务协议文档

      填写服务创建者自定义该服务的协议文档名称和协议URL地址。

  4. 单击创建服务,并在弹出的确认弹窗中单击确定。服务创建提交后可在提示界面单击去列表查看

  5. 回到我的服务页面,可以看到该服务目前已经处于创建中状态,此时可以点击查看日志,等待服务创建成功。如果失败,会有相应的报错日志,可以根据日志进行仓库和参数的调整。当日志中出现最后的BuildService Success后,说明服务创建成功。

    image.png

  6. 刷新服务页面后可以看到该服务目前处于 待预发布 状态。

后续步骤

  1. 更新服务。

    后续更新服务可以点击编辑版本按钮选择通过控制台更新或者通过已同步的仓库更新。当选择已同步的仓库更新时,计算巢会在后台重新拉取仓库,并根据当前仓库的文件进行服务构建。

    image.png

  2. 测试服务。

    服务保存后,您可以对服务进行自测试,也可以将服务预发布后,分享给指定的客户进行测试。更多信息,请参见测试服务

  3. 发布服务。

    服务测试通过后,再提交审核,审核通过后即可发布上线。更多信息,请参见上线服务

  • 本页导读 (1)
  • 前提条件
  • 功能概述
  • 操作步骤
  • 后续步骤

点击开启售前

在线咨询服务