Deploy NestJS App

Deploy your NestJS app in Zeabur.

Step 1: Create NestJS app (optional)

You can use NestJS CLI to create a new app.

Open your terminal and run the following command:

npm install -g @nestjs/cli

Then, create a new app:

nest new <your project name>

You can also clone a starter project from our GitHub repository.

git clone <your project name>

Then, install the dependencies:

pnpm install

Step 2: Setup environment variables


You can skip this step if you are using the starter project from our GitHub repository.

In Node.js applications, it's common to use .env files, holding key-value pairs where each key represents a particular value, to represent each environment.

NestJS provides a package called @nestjs/config to help you manage your environment variables.

pnpm add @nestjs/config

Once the installation process is complete, You can import the ConfigModule into src/app.module.ts and control its behavior using the .forRoot() static method.

import { Module } from '@nestjs/common'
import { ConfigModule } from '@nestjs/config'
  imports: [ConfigModule.forRoot()],
export class AppModule {}

Now, you can set up your port in src/main.ts

import { NestFactory } from '@nestjs/core';
import { AppModule } from './app.module';
async function bootstrap() {
  const app = await NestFactory.create(AppModule);
  await app.listen(process.env.PORT || 3000);
bootstrap().then(() =>
  console.log(`Application is running on: ${process.env.PORT || 3000}`),

Step 3: Deploy

Click on Add new service button, then choose Deploy your source code.


Search for your NestJS App repository, click on import, your NestJS App will start deploying.