To help users with no prior experience master service creation and deployment in Compute Nest, Compute Nest provides standardized workflows and example templates. This topic describes how to create a service from a curated template.
How it works
In Compute Nest, you can use a curated template to build and deploy a service quickly. Each curated template ships with best-practice configurations for common business scenarios, which greatly reduces the complexity of service creation. Curated templates suit users who have no prior experience or who want to launch a service quickly. To help you master service creation and deployment, Compute Nest provides standardized templates and example workflows. The overall workflow is as follows:
End-to-end workflow:
-
Create — Pick a curated template and create a service in the console.
-
Customize (optional) — Replace the default deployment packages or scripts with your own.
-
Extend (optional) — Add or modify cloud resources in the template.
-
Test and publish — Run a self-test or share a pre-release, then submit for review and publish.
When you create a service from a template, choose ECS or ACK as the infrastructure that runs the service, based on your business requirements.
-
ECS: Suitable for traditional application deployment. Provides virtual machine level compute capacity.
-
ACK: Suitable for containerized application deployment. Supports Kubernetes-based microservice architectures, which makes it easier to deploy services with high availability (HA) and elastic scaling.
Choose an infrastructure type
Each curated template runs on either Elastic Compute Service (ECS) or Alibaba Cloud Container Service for Kubernetes (ACK). Choose based on your application type and operational requirements.
| ECS | ACK | |
|---|---|---|
| Best for | Traditional applications | Containerized, microservice-based applications |
| Infrastructure | Virtual machine | Kubernetes cluster |
| Deployment package | ECS image, file, or software package | Helm images or container image |
| Deployment target | Customer's or service provider's account | Customer's or service provider's account |
Curated templates include only basic cloud resources (ECS and VPC). If your service requires additional resources such as RDS, you can add them after creating the service. See Modify the template.
Create a service from a template
If you only want to try out Compute Nest, completing this section is enough. The remaining sections are optional.
-
Open the Compute Nest console and go to My Services. Click Create Service.
-
On the Create Service page, select {type, select, label {Create Service from Featured Templates} description {<b> Suitable for new user to quickly create services</b>: Easily deploy services using a variety of architectures and application templates provided by Compute Nest.<a href="{url}" target="_blank" rel="noreferrer"> Reference </a>} other {{type}} }, then select a service type under Service Type.
Service type Description Private Service Software and resources are deployed within the customer's account. Fully Managed Service Software and resources are deployed within the service provider's account. -
In the Select Template section, click View Details on a template card to review its description and architecture. Click Next: Configure Settings.

-
Fill in the service information, then click Create Service.

-
Track the creation status on the My Services page.
Replace deployment packages or scripts (optional)
To adapt the template to your own software, replace the default deployment packages or scripts.
Replace deployment packages
Curated templates support the following deployment package types: ECS images, Helm images, files, and container images.
-
Complete the creation of your deployment package. For details, see Overview of deployment packages.
-
On the My Services page, click the service card to open the service details page. Click Modify Version in the upper-right corner and select Update in Console.

-
In the {type, select, createMode {Select Service Creation Method} serviceType {Select Service Type} selectTemplate {Select Template} selectStore {Select Repository} serviceInfo {Service Information} deploy {Deployment Settings} resourceAssociation {Deployment Package Association} application {Application Group} deployTime {Deployed At} operation {O&M} monitor {Monitoring} upgrade {Upgrade} modifyConfig {Configuration Modification} parameterManageConfig {Custom Settings} backupRecoveryConfig {Backup and Restoration} log {Logs} permission {Permission Settings} retentionDays {Retention Period for Expired Instances} trial {Trial Settings} network {Network Settings} reseller {Distribution Settings} tenant {Tenant Settings} environmentCheck {Check Settings} createGitRepository {Synchronize to Repository} compliancePacks {Compliance Package Check} multipleLanguagesConfig {Multi-Language Configuration} other {{type}} } section, view the deployment packages currently associated with the service. Then click Deployment Package Association.
-
In the Select Deployment Package dialog box, select the deployment package and version you created. Click OK. This example uses Example-SpringBoot-ECS Image as the replacement package.

-
Click Save Update.
Replace running scripts
-
On the My Services page, click the service card to open the service details page. Click Modify Version in the upper-right corner and select Update in Console.

-
In the Template Content section, modify the script in the template. Then click Save Update.
-
ECS: Find the
ALIYUN::ECS::RunCommandresource and updateCommandContentwith your script.
Fn::GetAtt: - InstanceGroup - InstanceIds Type: RunShellScript Sync: true Timeout: 3600 CommandContent: # Print the message that the wait starts echo "Start waiting for 1 hour..." # Wait for 1 hour (3600 seconds) sleep 3600 # Print the message after the wait completes echo "Wait complete!" -
ACK: Find the
ALIYUN::CS::ClusterApplicationresource and updateyamlContentwith your script.
Resources: VpnModules: AckOrAcsClusterModule: ClusterApplications: DependsOn: - AckOrAcsClusterModule Type: ALIYUN::CS::ClusterApplication Properties: YamlContent: | apiVersion: apps/v1 kind: Deployment metadata: name: spring-boot labels: app: spring-boot spec: replicas: 1
-
Modify the template (optional)
Curated templates include only basic cloud resources (ECS and VPC). If your service requires additional resources, modify the template in the console.
Add cloud resources
The following example adds an RDS resource to an ECS image-based service deployment.
-
On the My Services page, open the service details page. Click Modify Version in the upper-right corner and select Update in Console. Locate the
Resourcessection in the template.Add the RDS resource directly in the
Resourcessection.ROSTemplateFormatVersion: '2015-09-01' Locals: ... Parameters: ... Conditions: ... Resources: # Create a VPC EcsVpc: ... # Create a vSwitch EcsVSwitch: ... SecurityGroup: ... InstanceGroup: ... RunInstallCommand: ... Outputs: ... Metadata: ... -
In Resource Orchestration Service, find the ALIYUN::RDS::DBInstance reference and locate the resource example.
RDSInstance: Type: ALIYUN::RDS::DBInstance Properties: VpcId: Ref: VpcId VSwitchId: Ref: VSwitchId EngineVersion: '5.6' DBInstanceClass: rds.mysql.s2.large SecurityIPList: 0.0.0.0/0 DBInstanceStorage: 5 Engine: MySQL DBMappings: - CharacterSetName: utf8 DBName: DBTest -
Copy the resource code into the
Resourcessection of your Compute Nest template.Update any
Refvalues to match the parameter names in your template.
Configure cloud resource parameters
Add cloud resource parameters
To add a parameter to a cloud resource, find the corresponding resource in Resource Orchestration Service and add it to the Properties field.
For example, to set the network type of an RDS database instance to public access:
-
In the property list of
ALIYUN::RDS::DBInstance, find theDBInstanceNetTypeIt is a String and is optional. It specifies the network type of the database instance. Valid values:Internet(public network access) andIntranet(internal-facing, the default value). -
Add
DBInstanceNetTypeto thePropertiesfield of the RDS resource in the template.
Resources:
RDSInstance:
Type: ALIYUN::RDS::DBInstance
Properties:
VpcId:
Ref: VpcId
VSwitchId:
Ref: VSwitchId
EngineVersion: '5.6'
DBInstanceClass: rds.mysql.s2.large
SecurityIPList: 0.0.0.0/0
DBInstanceStorage: 5
Engine: MySQL
DBInstanceNetType: Internet
DBMappings:
- CharacterSetName: utf8
DBName: DBTest
Modify cloud resource parameters
To change an existing parameter, update its value in the Properties field.
For example, to change the database engine from MySQL to SQL Server:
-
In the RDS documentation, find the
EngineandEngVersionparameters.
In the property list of ALIYUN::RDS::DBInstance, find the following parameters:
-
Engine(String, required): the database engine. Valid values:MySQL,SQLServer,PostgreSQL,PPAS, andMariaDB. -
EngineVersion(String, required): the database version number. For example,MySQLsupports 5.5, 5.6, 5.7, and 8.0, andSQLServersupports versions such as 2008r2 and 08r2_ent_ha.
-
Update
EngineandEngVersionin thePropertiesfield of the RDS resource.
Resources:
RDSInstance:
Type: ALIYUN::RDS::DBInstance
Properties:
VpcId:
Ref: VpcId
VSwitchId:
Ref: VSwitchId
EngineVersion: '5.6'
DBInstanceClass: rds.mysql.s2.large
SecurityIPList: 0.0.0.0/0
DBInstanceStorage: 5
Engine: MySQL
DBMappings:
- CharacterSetName: utf8
DBName: DBTest
Before deleting any parameter, confirm it is not required by the resource. Removing a required parameter can disrupt your service.
Expose cloud resource parameters as user input
To let users configure a cloud resource parameter when they deploy your service, add the parameter to the Parameters section of the template and reference it in Properties using the Ref function.
Test and publish
After saving the service, run a self-test or share it with specific customers as a pre-release for testing. For details, see Test a service.
After the service passes testing, submit it for review. Once approved, publish the service. For details, see Publish a service.
What's next
To customize the template further — such as adjusting resource specifications or enabling service upgrades — see Advanced features.