快速构建基于DockerCompose代码库的计算巢服务

简介: 计算巢支持根据仓库快速创建服务,包括使用Docker Compose的情况。用户需准备包含docker-compose.yaml的GitHub或Gitee仓库,然后在计算巢控制台选择仓库创建服务,填写相关配置并发布,发布上线可以供他人使用。

概要

目前计算巢已经支持根据仓库创建服务,仅需要选择架构,软件类型等参数即可实现快速创建。该功能涉及多种软件类型与架构、服务形态等,本文针对其中一种软件类型--Docker compose,介绍如何快速创建一个计算巢服务。
Github Demo:https://github.com/aliyun-computenest/quickstart-docker-compose-demo

概念解释

计算巢服务:云资源与软件或应用的编排集合。一旦服务被发布和上线,终端用户就可以基于这些服务创建实例,以此来获取服务提供商的具体服务内容。

服务商:软件提供者或开源代码仓库持有者。

用户:希望使用服务商的软件的人群。

服务实例:通过计算巢服务创建出的软硬件资源的聚合体,用户可通过实例直接使用服务商的软件。

操作步骤

服务创建

  1. 准备好个人仓库(可以直接fork演示Demo的仓库),仓库中需要有docker-compose.yaml文件,本文实践中演示的docker-compose.yaml的内容如下所示:
version: "3"
services:
  halo:
    image: registry.fit2cloud.com/halo/halo:2.16
    restart: on-failure:3
    depends_on:
      halodb:
        condition: service_healthy
    networks:
      halo_network:
    volumes:
      - ./halo2:/root/.halo2
    ports:
      - "8090:8090"
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8090/actuator/health/readiness"]
      interval: 30s
      timeout: 5s
      retries: 5
      start_period: 30s          
    command:
      - --spring.r2dbc.url=r2dbc:pool:postgresql://halodb/halo
      - --spring.r2dbc.username=halo
      # PostgreSQL 的密码,请保证与下方 POSTGRES_PASSWORD 的变量值一致。
      - --spring.r2dbc.password=openpostgresql
      - --spring.sql.init.platform=postgresql
      # 外部访问地址,请根据实际需要修改
      - --halo.external-url=http://localhost:8090/
  halodb:
    image: postgres:15.4
    restart: on-failure:3
    networks:
      halo_network:
    volumes:
      - ./db:/var/lib/postgresql/data
    healthcheck:
      test: [ "CMD", "pg_isready" ]
      interval: 10s
      timeout: 5s
      retries: 5
    environment:
      - POSTGRES_PASSWORD=openpostgresql
      - POSTGRES_USER=halo
      - POSTGRES_DB=halo
      - PGUSER=halo
networks:
  halo_network:

该docker-compose.yaml来自于halo官方部署文档:https://docs.halo.run/getting-started/install/docker-compose

  1. 进入计算巢控制台,并点击“创建新服务”。
    image.png
  2. 选择“通过仓库创建服务”,然后依次选择github/gitee,仓库用户/组织、仓库名称和分支。注意:如果未授权,请先点击“前往授权”。
    image.png
  3. 勾选后弹出配置项,根据实际情况进行填写。
    image.png
  4. 配置好后点击“下一步”然后填写服务的基本信息,如服务名称等。
    image.png
  5. 点击“创建服务”。然后返回到“我的服务”,可以点击“查看日志”观察服务的创建进度,当日志出现“Build success”后标志创建成功。此时刷新页面就可以查看服务的详情了。
    image.png
    image.png

高级配置

本部分对服务配置参数:自定义服务参数,进行展开讲解。

  1. 如果您配置了这个参数,那么当您的用户创建实例时则需要填写。
  2. 隐藏输入的参数值(敏感参数):打开时,则代表该参数为敏感参数,显示时变为“***”。
  3. 类型:代表这个参数的类型,如String,Number等。
  4. AssociationProperty:代表前端渲染参数填写框的样式,具体可参考该文章
  5. 可选值:该处可以设置单个或多个可选值,用户只能在这些值里做选择。
  6. 用户见到的参数名:输入框展示的文字。
  7. 英文参数名:可在下一个填写位置“运行命令”中引用。

用法举例:当您的docker-compose.yaml文件中有需要用户输入的自定义参数,例如password时,可以如下操作:

  1. 自定义服务参数中新增类型为String的参数。
  2. 执行命令中引用该参数,并用sed命令替换docker-compose.yaml中的指定值。通过该方法可以在用户正式部署时再填入密码参数。
    image.png

服务实例创建

  1. 刚创建好的服务是draft版本,在正式发布服务前,可以先测试一下创建的服务实例是否符合预期。
    image.png
  2. 点击后进入部署参数填写页面,例如ECS实例规格,密码登参数。填写完后点击“下一步:确认订单”,查看了具体参数和资费后点击“立即创建”。随后服务实例进入部署中状态。 image.png

  3. 部署完成后,会返回一个url链接
    image.png
  4. 点击该链接。可以看到已经能打开Halo的控制台了。说明实例部署成功
    image.png

发布上线

刚创建出来的服务处于draft版本,测试正常部署后可以进行服务发布,按照下面的流程即可。
image.png

相关实践学习
2048小游戏
基于计算巢&ECS云服务器快速部署,带您畅玩2048小游戏。
相关文章
|
存储 弹性计算 运维
深度解读|NebulaGraph x 阿里云计算巢,云上构建超大规模图数据库
本文是NebulaGraph上架到计算巢的方案介绍,原文请查看:https://mp.weixin.qq.com/s/cj8ah7pfXqMFD74JOkmwow近期,杭州悦数科技有限公司与阿里云计算巢达成合作,NebulaGraph 作为首款图数据库产品正式入驻阿里云计算巢,为用户带来了云端一键部署企业级图数据库集群的全新体验。同时,该服务集成了多款 NebulaGraph 周边可视化图数据库管
390 0
深度解读|NebulaGraph x 阿里云计算巢,云上构建超大规模图数据库
|
5月前
|
弹性计算 前端开发 Java
快速通过源代码构建你的计算巢服务
通过源码快速创建你的计算巢服务!
|
运维 监控 Cloud Native
EMQX +阿里云计算巢,一站式构建云上物联网平台
本文是NebulaGraph上架到计算巢的方案介绍,原文请查看:https://mp.weixin.qq.com/s/FL8mju_D-O91Z8-vaG9MjA随着物联网技术的逐步成熟,海量设备产生的数据为企业数字化提供了更加丰富的数据基础。如何将海量设备数据与企业生产管理系统、业务应用系统以及运维监控系统有机结合,是企业在未来实现差异化竞争与业务创新的关键。在以物联网数据为基础的数字化转型过程
592 0
EMQX +阿里云计算巢,一站式构建云上物联网平台
|
人工智能 运维 Kubernetes
阿里云计算巢加速器:让优秀的软件生于云、长于云—入选企业深度访谈—工程师背后的工程师,KodeRover携手阿里云帮助企业构建数字化基建
阿里云计算巢加速器:让优秀的软件生于云、长于云—入选企业深度访谈—工程师背后的工程师,KodeRover携手阿里云帮助企业构建数字化基建
229 0
|
存储 弹性计算 自然语言处理
|
JSON 运维 监控
EMQX +计算巢:构建云上物联网平台,轻松实现百万级设备连接
EMQX已在阿里云计算巢软件免费试用中心上架,用户可免费试用7天。
EMQX +计算巢:构建云上物联网平台,轻松实现百万级设备连接
|
弹性计算 运维 安全
观测云入驻阿里云计算巢,为用户构建稳定安全的云上连接
阿里云计算巢正式通过了可观测性解决方案的提供商观测云的 “云合计划”合作伙伴认证
观测云入驻阿里云计算巢,为用户构建稳定安全的云上连接
|
7月前
|
监控 测试技术 网络安全
基于阿里云计算巢部署的幻兽帕鲁服务器我该如何设置计划任务定时备份和重启,以及存档导入导出
基于阿里云计算巢部署的幻兽帕鲁服务器我该如何设置计划任务定时备份和重启,以及存档导入导出
|
人工智能 自然语言处理 Kubernetes
产品动态丨阿里云计算巢月刊-2023年第09期
计算巢正式上线“软件分销中心”、新增套餐变配限制等5项功能更新;30分钟,通过计算巢一键拉起企业专属Chatbot应用的最佳实践;CoCoPIE XGen及契约锁电子签章等合作伙伴服务更新……让优秀的企业软件生于云、长于云~
产品动态丨阿里云计算巢月刊-2023年第09期
|
运维 安全 云计算
产品动态丨阿里云计算巢月刊-2023年第10期
计算巢新增部署物安全检查事件通知功能、部署物支持标签和资源组等5项功能更新;通过计算巢轻松部署 Ansible Semaphore的最佳实践;明焰安全 NGEP及小太阳CRM等合作伙伴服务更新……让优秀的企业软件生于云、长于云~

相关产品

  • 计算巢服务