tencent cloud

Feedback

Quickly Deploying Koa Framework

Last updated: 2023-02-02 11:00:57

    Overview

    This document describes how to quickly deploy a local Koa project to the cloud through an HTTP-triggered function.

    Note:

    This document mainly describes how to deploy in the console. You can also complete the deployment on the command line. For more information, see Deploying Framework on Command Line.

    Prerequisites

    Before using SCF, you need to sign up for a Tencent Cloud account and complete identity verification first.

    Directions

    Template deployment: Quick deployment of Koa project

    1. Log in to the SCF console and click Functions on the left sidebar.
    2. Select the region and namespace where to create a function at the top of the page and click Create to enter the function creation process.
    3. Select Template, enter koa in the search box to filter function templates, select the Koa template, and click Next.
    4. On the Create page, you can view and modify the specific configuration information of the template project.
    5. Click Complete. After creating the HTTP-triggered function, you can view its basic information on the Function management page.
    6. Click Trigger management on the left to view the access path and access your deployed Koa project as shown below:
    7. Click the access path URL to access the Koa project as shown below:

    Custom deployment: Quick migration of local project to cloud

    Prerequisites

    The Node.js runtime environment has been installed locally.

    Local development

    1. Refer to the Koa.js official documentation to install the Koa environment and initialize your Koa project. The following takes hello world as an example. The content of app.js is as follows:

      // app.js
      const Koa = require('koa');
      const app = new Koa();
      const main = ctx => {
      ctx.response.body = 'Hello World';
      };
      app.use(main);
      app.listen(3000);
      
    2. In the root directory, run the following command to directly start the service locally.

      node app.js
      
    3. Visit http://localhost:3000 in a browser, and you can access the sample Koa project locally.

    Deployment in cloud

    You need to make simple modifications to the initialized project, so that the project can be quickly deployed through an HTTP-triggered function. The project transformation here is usually divided into the following two steps:

    • Change the listening address and port to 0.0.0.0:9000.
    • Add the scf_bootstrap bootstrap file.

    The detailed directions are as follows:

    1. In the sample Koa project, change the listening port to 9000 as shown below:
    2. Create the scf_bootstrap bootstrap file in the project root directory and add the following content to it (which is used to configure environment variables and start services):
      #!/bin/bash
      /var/lang/node12/bin/node app.js
    3. After the creation is completed, you need to run the following command to modify the executable permission of the file. By default, the permission 777 or 755 is required for it to start normally. Below is the sample code:
      chmod 777 scf_bootstrap
    4. Log in to the SCF console and click Functions on the left sidebar.
    5. Select the region where to create a function at the top of the page and click Create to enter the function creation process.
    6. Select Create from scratch and configure the options as prompted:
      • Function type: Select HTTP-triggered function.
      • Function name: Enter the name of your function.
      • Region: Enter your function deployment region, which is Guangzhou by default.
      • Runtime environment: Select Nodejs 12.16.
      • Submitting method: Select Local folder and upload your local project.
      • Function codes: Select the specific local folder where the function code is.
    7. Click Complete.

    Development management

    After the deployment is completed, you can quickly access and test your web service in the SCF console and try out various features of SCF, such as layer binding and log management. In this way, you can enjoy the advantages of low cost and flexible scaling brought by the serverless architecture.

    Contact Us

    Contact our sales team or business advisors to help your business.

    Technical Support

    Open a ticket if you're looking for further assistance. Our Ticket is 7x24 avaliable.

    7x24 Phone Support