Updated on 2026-08-26 GMT+08:00

Creating an Application

Scenarios

This section describes how to create a Supabase AI application on the RDS console. When creating an application, you must purchase an RDS for PostgreSQL instance and associate it with the application. The instance can be billed on a yearly/monthly or pay-per-use basis. You can customize the instance's compute capacity and storage to suit your workload needs.

Prerequisites

Precautions

  • To use RDS Supabase applications, submit a service ticket.
  • General-purpose Supabase AI applications are free to use. You are only billed for using the hosted RDS for PostgreSQL instance, public NAT gateway, instance storage, and OBS. Yearly/monthly and pay-per-use billing modes are available.
  • After you submit an application creation task, the system first creates an RDS for PostgreSQL instance. After the instance is created, the application is automatically created. During Supabase creation, do not perform operations on the hosted DB instance to prevent application creation failures or exceptions. The name of the hosted DB instance is system-generated and cannot be customized. Its default format is rds-supabase-pg-{UUID}, for example, rds-supabase-pg-8c44ba06.
  • Supabase AI applications do not support disk expansion or specification change. These operations are supported on their hosted DB instances.
  • Deleting a hosted RDS for PostgreSQL instance will automatically delete its associated Supabase AI application. Exercise caution when performing this operation.
  • The hosted DB instance of a Supabase AI application automatically creates the following databases, which cannot be deleted during runtime. Do not perform any operations (such as inserting or deleting data) on them to avoid affecting the application. These databases can be deleted only if you retain the DB instance while deleting the Supabase application.
    • supabase_db

      An application database used to store created tables, data, and Supabase's built-in schemas. Exercise extreme caution when performing operations on this database, especially high-risk O&M operations like rate limiting or session termination.

      The extensions pgjwt, pgcrypto, supabase_vault, vector, pg_net, and pg_graphql are automatically installed in this database by default. Do not delete these necessary extensions.

    • _supabase

      A database used to store platform-level configurations, project metadata, and migration logs.

  • The following default accounts are automatically created on the hosted DB instance of the Supabase AI application. These accounts are preset and cannot be deleted or modified. In addition, you cannot create accounts with the same names on this instance.

    Automatically created default accounts include: rds_supabase_authenticator, rds_supabase_auth_admin, rds_supabase_admin, rds_supabase_storage_admin, rds_supabase_postgres, rds_supabase_functions_admin, anon, authenticated, and service_role.

Constraints

  • Each Supabase AI application supports only general-purpose specifications and can only be deployed on a standalone DB instance. It must be deployed in the primary AZ of the hosted instance.
  • A Supabase AI application can manage only one RDS for PostgreSQL instance. You cannot manually unbind the instance or bind a new instance to the application.
  • While an application is being created, no other operations can be performed on it and its hosted DB instance cannot be deleted.

Procedure

  1. Log in to the RDS console.
  2. Click in the upper left corner and select a region.
  3. In the navigation pane, choose AI App Dev Platform.
  4. Click Create Supabase App. The page for creating a Supabase application is displayed.
  5. Configure the parameters and then click Buy in the lower right corner.

    • Basic settings
      Figure 1 Basic settings for an RDS Supabase application
      Table 1 Basic settings

      Parameter

      Description

      Region

      Region where your resources are located.

      NOTE:

      Resources in different regions cannot communicate with each other over a private network. Once a DB instance is created, its region cannot be changed.

      Billing Mode

      Billing mode for the hosted DB instance.

      • Yearly/Monthly: a prepaid billing mode in which you pay for resources before using them. Bills are settled based on the subscription period. The longer your subscription term is, the better your discount is. This mode is a good option for long-term, stable workloads.
      • Pay-per-use: a postpaid billing mode. You pay as you go and just pay for what you use. The DB instance usage is calculated by the second but billed every hour. This mode allows you to adjust resource usage easily. You neither need to prepare for resources in advance, nor end up with excessive or insufficient preset resources.
    • Supabase application configurations
      Figure 2 RDS Supabase application configurations
      Table 2 Application configuration description

      Parameter

      Description

      Supabase App Name

      Name of the Supabase application. Duplicate names are allowed but a distinctive name is recommended for easier management.

      The application name must consist of 4 to 64 characters and start with a letter. Only letters (case-sensitive), digits, hyphens (-), and underscores (_) are allowed.

      Version

      Version of the Supabase application. The version number is in three-segment format.

      Deployment Mode

      Deployment mode of the Supabase application. Only single-node deployment is supported.

      AZ

      An AZ is a physical region where resources have independent power supplies and networks. AZs are physically isolated but interconnected through an internal network. Some regions support both single-AZ and multiple-AZ deployments and some only support single-AZ deployment.

      NOTE:

      Supabase is deployed in the primary AZ of the hosted DB instance.

      Specification Type

      Specification type of the VM resources used by the application.

      Supabase applications support only general-purpose specifications.

      Instance Specifications

      vCPUs and memory of the VM resources used by the application.

      The default specifications of Supabase applications are 2 vCPUs | 4 GB. Expansion is not supported.

      Dashboard Username

      Username for logging in to the Supabase application's dashboard (a web-based console).

      The default username for logging in to a Supabase application is supabase and cannot be changed.

      Dashboard Password

      The password must consist of 8 to 32 characters and contain at least three of the following: uppercase letters, lowercase letters, digits, and special characters (~ ! @ # $ % ^ * - _ = + ? ,). Enter a strong password and change it regularly to enhance security and prevent risks like brute-force attacks.

      If the password you provide is considered weak, the system will prompt you to enter a stronger one.

      Keep this password secure. The system cannot retrieve it if it is lost.

      After an application is created, you can reset this password if needed. For details, see Resetting the Application Password.

      Storage Configuration

      Whether to integrate the Supabase Storage component with Huawei Cloud Object Storage Service (OBS) for storing and managing unstructured data such as images and videos.

      This option is unchecked by default, indicating that the storage function is disabled. Enable it as required. When this option is enabled, configure the parameters based on Table 3.

      Figure 3 Storage configuration for an RDS Supabase application
      Table 3 Storage configuration description

      Parameter

      Description

      OBS Bucket

      Name of the OBS tenant bucket to integrate with.

      The OBS bucket is a tenant bucket created in Huawei Cloud OBS. Ensure that you have full access and control permissions for the bucket, including uploading, viewing, and downloading files.

      Access Key ID (AK)

      The access key ID (AK) for the user. Ensure that the AK has access permissions to the specified OBS bucket. For details about how to obtain it, see Access Keys.

      NOTE:

      Access keys, comprising an AK and an SK, serve as your enduring identity credentials within Huawei Cloud. They allow you to sign requests made to Huawei Cloud APIs. Huawei Cloud uses AK/SK pairs to sign requests cryptographically, ensuring that the requests are secret, complete, and correct.

      Secret Access Key (SK)

      The secret access key (SK) for the user. Ensure that the SK has access permissions to the specified OBS bucket. For details about how to obtain it, see Access Keys.

      NOTE:

      Access keys, comprising an AK and an SK, serve as your enduring identity credentials within Huawei Cloud. They allow you to sign requests made to Huawei Cloud APIs. Huawei Cloud uses AK/SK pairs to sign requests cryptographically, ensuring that the requests are secret, complete, and correct.

    • Hosted RDS instance configurations
      Figure 4 Hosted RDS for PostgreSQL instance configurations
      Table 4 Hosted instance configurations

      Parameter

      Description

      PostgreSQL Database Version

      Version of the hosted DB instance. Only version 17 and later are supported. The earliest supported minor version is 17.10.260600.

      NOTE:

      Supported versions may vary by region. For the actual options, see them on the console.

      Select an appropriate version tailored to your workloads. You are advised to select the latest available version because it is more stable, reliable, and secure.

      RDS Deployment Mode + AZ

      Set the deployment mode and region for the DB instance. Two options are available: Primary/Standby and Single. For a primary/standby instance, you must configure both the primary and standby AZs. For a single-node instance, you only need to configure the primary AZ. The primary AZ must be the same as the AZ of the Supabase application.

      • Primary/Standby: uses an HA architecture with a primary instance and a synchronous standby instance. It is suitable for production databases of large- and medium-sized enterprises in Internet, Internet of Things (IoT), retail e-commerce sales, logistics, gaming, and other sectors. The standby instance improves instance reliability and is invisible to users after being created.

        An AZ is a physical region where resources have independent power supplies and networks. AZs are physically isolated but interconnected through an internal network. Some regions support both single-AZ and multiple-AZ deployments and some only support single-AZ deployment.

        To achieve high reliability, RDS will automatically deploy your primary and standby instances in different physical servers even if you deploy them in the same AZ. If you attempt to deploy your primary and standby instances in the same AZ in a Dedicated Computing Cluster (DCC) and there is only one physical server available, the creation will fail.

        You can deploy your primary and standby instances in a single AZ or across AZs to implement failover and high availability.

      • Single: uses a standalone architecture, which is less expensive than primary/standby instances. It is recommended for development and testing of microsites, and small- and medium-sized enterprises, or for learning about this service.
      NOTE:

      Access keys, comprising an AK and an SK, serve as your enduring identity credentials within Huawei Cloud. They allow you to sign requests made to Huawei Cloud APIs. Huawei Cloud uses AK/SK pairs to sign requests cryptographically, ensuring that the requests are secret, complete, and correct.

      Instance Specifications

      vCPUs and memory. Different instance specifications support different numbers of database connections and maximum IOPS.

      For details, see RDS for PostgreSQL Instance Specifications.

      After an instance is created, you can change its specifications. For details, see Changing a DB Instance Class.

      NOTE:

      Only general-enhanced instances are allowed for a DCC.

      The minimum specifications for instances in production environments are 4 vCPUs and 8 GB of memory. Specifications lower than 4 vCPUs and 8 GB of memory are used only for testing.

      Storage Type

      The storage type determines the read/write speed of an instance. A higher maximum throughput enables faster read/write operations.

      • Cloud SSD: uses cloud SSD storage to store data to implement decoupled storage and compute and supports capacity expansion.
      • Extreme SSD: uses 25GE network and remote direct memory access (RDMA) technologies to provide you with up to 1,000 MB/s throughput per disk and sub-millisecond latency.
      NOTE:

      If Dedicated Distributed Storage Service (DSS) is enabled, the storage type is the type of disks created in the dedicated storage pool.

      Administrator

      The default login username for the database is root. It cannot be changed.

      Administrator Password

      The password must consist of 8 to 32 characters and contain at least three of the following: uppercase letters, lowercase letters, digits, and special characters (~ ! @ # $ % ^ * - _ = + ? ,). Enter a strong password and change it regularly to enhance security and prevent risks like brute-force attacks.

      After an instance is created, you can reset this password if needed. For details, see Resetting the Hosted Instance Password.

      NOTE:

      If the password you provide is considered weak, the system will prompt you to enter a stronger one.

      Keep this password secure. The system cannot retrieve it if it is lost.

      Confirm Password

      This password must be the same as the administrator password.

      Enterprise Project

      If your account has been associated with an enterprise project, select the target project from the Enterprise Project drop-down list.

      For more information about enterprise projects, see Enterprise Management User Guide.

      Parameter Template

      A parameter template is a collection of engine configuration settings that can be applied to one or more instances of the same DB engine. If you intend to create a primary/standby instance, they use the same parameter template after being created. You can modify the parameter template as required after the instance is created.

      NOTICE:

      If you use a custom parameter template while creating an instance, the following specification-related parameters in this template are not delivered. Instead, the default values are used.

      • maintenance_work_mem
      • shared_buffers
      • max_connections
      • effective_cache_size

      After an instance is created, you can adjust its parameters as needed. For details, see Modifying Parameters of an RDS for PostgreSQL Instance.

      Time Zone

      Select a time zone for your instance based on the region hosting your instance. You can select a time zone during instance creation and change it later as needed.

    • Network configuration
      Figure 5 Network configuration for an RDS Supabase application
      Table 5 Hosted instance configurations

      Parameter

      Description

      VPC

      The virtual network in which the RDS Supabase application and RDS instance are located. A VPC can isolate networks for different workloads. You can select an existing VPC or create a VPC. For details about how to create a VPC, see "Creating a VPC" in Virtual Private Cloud User Guide.

      To use a shared VPC, select a VPC that another account shares with the current account from the drop-down list.

      VPC owners can share the subnets in a VPC with one or multiple accounts through Resource Access Manager (RAM). With VPC sharing, you can easily configure, operate, and manage multiple accounts' resources at low costs. For more information about VPC and subnet sharing, see VPC Sharing.

      NOTICE:

      After the RDS Supabase application and hosted instance are created, the VPC cannot be changed.

      The Supabase application and hosted instance are in the same VPC.

      Subnet

      A subnet provides dedicated network resources that are logically isolated from other networks for network security. Subnets are only valid for a given AZ. The Dynamic Host Configuration Protocol (DHCP) function must be enabled by default for the subnet in which you plan to create the RDS Supabase application. It cannot be disabled.

      NOTICE:

      Only IPv4 addresses are supported. The subnet cannot be changed. The Supabase application and hosted instance are in the same subnet.

      Supabase IPV4

      Set a private IP address for the Supabase application. A private IPv4 address is automatically assigned to your Supabase application when you create it. You can also specify an unused private IPv4 address from the subnet CIDR block. The private IP address cannot be changed after the application is created.

      RDS IPV4

      Set a private IP address for the hosted instance. A private IPv4 address is automatically assigned to your hosted instance when you create it. You can also specify an unused private IPv4 address from the subnet CIDR block. The private IP address cannot be changed after the instance is created.

      Database Port

      Set the database port for the hosted instance. The default port number is 5432. The port number ranges from 2100 to 9500.

      Supabase Security Group

      Restricts inbound and outbound access rules and ports for the application, enhancing access security between the Supabase AI application and other services.

      NOTICE:

      The Supabase application port is fixed to port 8443 by default and cannot be modified. This port listens on the data NIC and binds to the private IP address of the application.

      If you want to allow public network access (through DNAT) to the Supabase application, ensure that the selected security group allows public IP addresses to access the DB instance and allows inbound TCP traffic on port 8443.

      Only one security group can be configured. Configure appropriate security group rules to prevent security risks.

      RDS Security Group

      A security group controls network traffic for both inbound and outbound directions and restricts access by port. By default, rules allowing access within the instance's security group are automatically added. In addition, network access control lists (ACLs) allow or deny network traffic entering and exiting subnets.

      Security groups apply access rules for instances, enhancing secure communication between RDS and other cloud services. Ensure that the security group you select allows your client to access the instance.

      When creating a hosted instance, you can configure only one security group (for better network performance). In this case, the instance's access rules strictly follow the network rules of this security group.

      If no security group is available, RDS assigns one for you.

    • Required duration and auto-renewal (required only for yearly/monthly instances)
      Figure 6 Required duration and auto-renewal configurations for the RDS Supabase application
      Table 6 Required duration and quantity settings for the application

      Parameter

      Description

      Required Duration (Yearly/Monthly)

      Required duration for the hosted instance. The system will automatically calculate the fee based on the selected required duration. The longer the required duration is, the larger discount you will enjoy.

      Auto-renew (Yearly/Monthly)

      • By default, this option is not selected.
      • If you select this option, the auto-renewal cycle is determined by the length of the subscription.

      If you have any questions about the price, click Pricing details at the bottom of the page.

  6. For the pay-per-use billing mode, complete the creation request for the RDS Supabase application and its hosted DB instance.
  7. For the yearly/monthly billing mode, submit your order.

    • If you need to modify the settings, click Previous.
    • If you do not need to modify your settings, click Pay Now.
      Figure 7 Confirming the RDS Supabase application order

      Select a payment method and complete the payment.

  8. After the RDS Supabase application is created, you can view and manage it on the AI App Dev Platform page.

    • The system creates a hosted instance for the application first. The Supabase application is created only after the instance is created. The creation process takes about 30 minutes.
    • When the hosted instance is being created, its status is Creating. The status changes to Available after the instance is created. The process takes 5–9 minutes.
    • The system enables an automated backup policy for the hosted instance during creation by default. You can modify the policy, if needed, after the instance is created. The system creates a full backup once the instance is created.
    • After the hosted instance is created, the instance name prefix defaults to rds-supabase-pg-, which can be modified as needed. You can also add remarks to categorize instances easily.
    • The default port for the hosted instance is port 5432. It cannot be changed after the instance is created. Specify the port during instance creation.