宝塔部署nestjs
时间: 2025-07-01 22:54:44 浏览: 9
在宝塔面板中部署 NestJS 项目可以采用多种方式,包括使用 Node.js 版本管理器、PM2 进程管理工具或 Docker 容器化部署。以下是详细的部署步骤和注意事项:
### 使用 Node.js 版本管理器部署
1. **安装 Node.js 版本管理器**
在宝塔面板的软件商店中搜索并安装“Node.js版本管理器”插件,选择与你的 NestJS 项目兼容的 Node.js 版本进行安装。
2. **上传项目代码**
登录宝塔面板,进入网站根目录(通常为 `/www/wwwroot/yourdomain.com`),将本地打包好的 NestJS 项目文件上传至该目录。确保删除原有的默认文件,避免冲突[^2]。
3. **配置运行环境**
使用宝塔的终端功能或者通过 SSH 登录服务器,在项目目录下执行以下命令:
```bash
# 安装项目依赖
npm install
# 或者使用 yarn
yarn install
```
确保 `package.json` 文件中包含启动脚本,例如 `"start": "node dist/main"`。
4. **启动 NestJS 应用**
执行启动命令以运行 NestJS 应用:
```bash
npm run start
```
如果希望应用在后台持续运行,可以使用 `pm2` 或其他进程管理工具。由于 PM2 已从宝塔插件市场下架,可以通过 npm 手动安装:
```bash
npm install -g pm2
pm2 start dist/main.js --watch
```
5. **设置反向代理(可选)**
如果需要通过域名访问,可以在宝塔中配置反向代理。进入网站设置 > 反向代理,添加目标地址为 `http://127.0.0.1:3000`(假设 NestJS 默认端口为 3000)。
### 使用 Docker 部署
1. **创建 Dockerfile**
在 NestJS 项目的根目录下创建 `Dockerfile`,内容如下:
```dockerfile
FROM node:14
WORKDIR /usr/src/app
COPY . .
EXPOSE 3000
CMD ["yarn", "start:dev"]
```
2. **构建 Docker 镜像**
在服务器上执行以下命令来构建镜像:
```bash
docker build -t your-nestjs-app .
```
3. **运行 Docker 容器**
启动容器并映射端口:
```bash
docker run -d -p 3000:3000 --name nestjs-container your-nestjs-app
```
4. **配置宝塔反向代理**
类似于非 Docker 部署,可以在宝塔中设置反向代理指向 `http://127.0.0.1:3000`。
### 注意事项
- 确保服务器的安全组规则允许外部访问所需端口。
- 检查防火墙设置,确保端口未被阻止。
- 对于生产环境,建议使用 HTTPS 并配置 SSL 证书。
- 若使用数据库或其他服务,确保相关配置正确且服务可用。
阅读全文
相关推荐



















