当前位置: 首页 > news >正文

linux 使用nginx部署next.js项目,并使用pm2守护进程

前言

本文基于:操作系统 CentOS Stream 8
使用工具:Xshell8、Xftp8

服务器基础环境:

  • node - 请查看 linux安装node并全局可用
  • pm2 - 请查看 linux安装pm2并全局可用
  • nginx - 请查看 linux 使用nginx部署vue、react项目

所需服务器基础环境,请根据提示进行下载、安装。

1.上传项目文件

除 node_modules 之外的项目文件上传至服务器,服务器目录路径可以自定义,后续步骤需对应修改

在这里插入图片描述

2.安装依赖

cd /var/www/project
npm install

在这里插入图片描述

3.项目打包

npm run build

在这里插入图片描述

4.使用 pm2 启动项目

pm2 start npm --watch --name next.js -- start

说明

  • pm2 start: 启动命令
  • npm: 包管理器(如使用的是yarn,那么这里的 npm 就替换成yarn)
  • –watch: 监控文件变化并自动重启应用
  • –name: 进程名称(可以自定义)
  • – start: 脚本命令(对应 package.json 的 start 命令,如有修改需对应替换)

在这里插入图片描述

5.更改启动端口(可选)

next.js 启动端口默认为3000,如需更改启动端口,有两种方法。

第一种(静态端口)

 "scripts": {"dev": "next dev","build": "next build","start": "next start -p 8888","lint": "next lint"}

第二种(动态端口)

 "scripts": {"dev": "next dev","build": "next build","start": "next start -p $PORT","lint": "next lint"}
pm2 start npm --watch --name next.js -- start PORT=8888

6.配置 nginx.conf 文件

server {listen       80;server_name  localhost;location / {proxy_pass http://127.0.0.1:3000/;}
}

在这里插入图片描述

7.效果图

在这里插入图片描述

如果本篇文章对你有帮助的话,很高兴能够帮助上你。

当然,如果你觉得文章有什么让你觉得不合理、或者有更简单的实现方法又或者有理解不来的地方,希望你在看到之后能够在评论里指出来,我会在看到之后尽快的回复你。

http://www.xdnf.cn/news/247303.html

相关文章:

  • 加载ko驱动模块:显示Arm版本问题解决!
  • 小白如何入门Python爬虫
  • 【playwright】内网离线部署playwright
  • PMP-第九章 项目资源管理(一)
  • 机器学习实操 第一部分 机器学习基础 第8章 降维技术
  • 深度学习中卷积的计算复杂度与内存访问复杂度
  • 数字基带信号和频带信号的区别解析
  • ES6异步编程中Promise与Proxy对象
  • 小牛电动:荣登央视舞台,引领智能出行新潮流
  • c++26新功能——std::execution
  • 加密算法(一)-对称加密(DES、AES、3DES、Blowfish、Twofish)一篇了解所有主流对称加密,轻松上手使用。
  • mysql-窗口函数一
  • 链表系列一>合并 k 个升序链表
  • 【CV数据集】DIOR遥感目标检测数据集(含处理好的YOLO、COCO、VOC格式和相关配置文件下载链接)
  • 响应式布局,在飞帆平台中如此简单
  • 文件包含漏洞学习
  • PostgreSQL:pgAdmin 4 使用教程
  • 手撕哈希表
  • Android 移动开发:ProgressBar (水平进度条)
  • 【LeetCode Hot100】回溯篇
  • cua: 为 AI 智能体提供高性能虚拟环境
  • GTA5(传承/增强) 13980+真车 超跑 大型载具MOD整合包+最新GTA6大型地图MOD 5月最新更新
  • PyTorch 2.0编译器技术深度解析:如何自动生成高性能CUDA代码
  • 【Bootstrap V4系列】学习入门教程之 页面内容排版
  • 图像加密算法概述
  • Elsevier latex报错Paragraph ended before \@citex was complete.<to be read again>
  • Vue3 + OpenLayers 企业级应用进阶
  • Linux 第六讲 --- 工具篇(一)yum/apt与vim
  • 哈希表笔记(四)Redis对比Java总结
  • YOLOv8模型训练过程