Term | Description |
Installation Package | The installation package is a deliverable for automatic deployment submitted by partners that complies with CloudApp standards, integrating cloud resource orchestration, installation parameters, and output declarations, etc. Users through Cloud App one-click deployment, just automatically perform resource creation, application configuration and process startup, achieving full process automation installation. |
| Template Creation | Ordinary Creation |
Advantage | Simple and quick, create using officially provided fixed templates. Just input a small amount of template parameters to quickly create an installation package and submit the development edition. | High flexibility, can create complex applications. Fully customize various types of resources and their parameters. |
Shortage | Insufficient flexibility, only supports partial customization of parameters. | A certain level of development basis is required. You need to install the Node.js environment and the CLI developer tool. |






cloudapp command to view the instructions for using the tool.cloudapp login command to log in to the local developer center. You need to use the developer's CAM key to log in.cloudapp login $SECRET_ID@$SECRET_KEY
.cloudapp directory under the project root directory as the installation package directory.cloudapp init command to generate a sample installation package:# Initialize a local project. You can specify an initial template with -t. For reference, supported templates are listed in the Github template list (default template: CVM instance + public IP address).cloudapp init hello-world# Example# cloudapp init hello-world -t CT_001
cloudapp init command is currently in preview edition. Its usage and parameters may be adjusted subsequently. Currently, cloudapp init only downloads template code locally. More template codes can be viewed in the Cloud App's GitHub repository.Content | Position | Description |
Meta-information of Installation Package | .cloudapp/package.yaml | The description file of the meta-information of the installation package. Contains declarations of information such as installation package ID, application installation parameters, and CAM permission policies. |
Resource and variable declaration | .cloudapp/infrastructure/**/*.tf | Resource and variable declaration using Terraform syntax. Resources are declared in the form of resource blocks; variables are variables that can be used during resource deployment and need to be declared before use. |
CVM image (artifact) | Cloud App Artifact Hosting Center | Cloud App provides CVM image hosting. |
Content | Position | Description |
Meta-information of Installation Package | .cloudapp/package.yaml | The description file of the meta-information of the installation package. Contains declarations of information such as installation package ID, application installation parameters, and TencentCloud API permissions. |
Resource and variable declaration | .cloudapp/infrastructure/**.tf | Resource and variable declaration using Terraform syntax. Resources are declared in the form of resource blocks; variables are variables that can be used during resource deployment and need to be declared before use. |
Container image (artifact) | Cloud App TCR repository | Cloud App provides TCR repositories to provide image hosting services for applications that need to host container images. |
Service orchestration | .cloudapp/software/charts/**/*.yaml | Service orchestration, adopting Helm Chart orchestration specification. Orchestrate StatefulSet, Service, Job, Secret, etc. in a container cluster. |
package.yaml, including declarations of information such as installation package ID, application installation parameters, and TencentCloud API permissions.# Installation package ID, corresponding to the app ID in the developer centerid: pkg-8lve2gn1# Application parameters, defining the parameters that allow customers to set during the installation process, such as associated network, application specifications, payment method, etc.args:- name: app_targetlabel: target networkwidget: subnet-select# Application permission declaration (optional). If you need to call TencentCloud API within the application, declare it here.role:policy:version: "2.0"statement:- action:- cloudapp:VerifyLicenseresource: "*"effect: allow
resource "tencentcloud_eks_cluster" "eks" {availability_zone = var.app_target.subnet.zonek8s_version = "1.20.6"vpc_id = var.app_target.vpc.idsubnet_ids = [var.app_target.subnet.id]service_subnet_id = var.app_target.subnet.id}
resource indicates a resource block declaration. "tencentcloud_eks_cluster" indicates the resource type. "eks" is the resource name.tencentcloud as the resource type.cloudapp.# Declare a variable using the variable keyword. app_target is the "variable name". You can use this variable through var.app_target.variable "app_target" {type = object({region = stringregion_id = stringvpc = object({id = stringcidr_block = string})subnet = object({id = stringzone = string})})}
variable to declare a variable. In the above declaration, app_target is the variable name, which can be referred to as var.app_target in the resource block.



cloudapp docker command to obtain the repository login command.
cloudapp docker --url to obtain the repository push address.
cloudapp docker --auth to obtain the Docker authorization file separately, suitable for CI build scenarios.
cloudapp_helm_app.resource "cloudapp_helm_app" "helm_charts" {cluster_id = tencentcloud_eks_cluster.eks.idchart_src = "../software/chart"chart_username = var.cloudapp_repo_usernamechart_password = var.cloudapp_repo_passwordchart_values = {SUBNET_ID = var.app_target.subnet.idIMAGE_CREDENTIALS = {REGISTRY = var.cloudapp_repo_serverUSERNAME = var.cloudapp_repo_usernamePASSWORD = var.cloudapp_repo_password}}}
.cloudapp/software/chart).chart_values. This information will be transmitted to Helm during deployment. Thus, infrastructure can be directly used during orchestration. See the above example. Transmit the subnet ID to the orchestration. When orchestrate the service, specify this subnet ID to generate a private network CLB type. Another common example is to import the connection information of the instantiated DB into the orchestration, so that the workload can refer to it from the environmental variable or generate it into a configmap.Feedback