Next.js项目部署

服务器就相当于一台云电脑,需要在上面进行一些配置才行

一、项目准备与测试

1. 安装nodejs

        先在官网查看node版本,看看自己想安装哪个版本的 https://nodejs.org/dist/ 下面是linux,所以下载linux版本的

· 进入安装目录
先看文件树,看看这个目录存不存在,不存在先创建

创建好后,输入下面的命令进入到所在目录

cd /opt/software


· 下载
这里我选择了 16.15.0 版本的nodejs,如果你是其它版本,记得改一下下面的版本号

wget https://nodejs.org/dist/v16.5.0/node-v16.15.0-linux-x64.tar.xz


· 解压
如果你是其它版本,记得改一下下面的版本号

tar xvJf node-v16.15.0-linux-x64.tar.xz


然后删除二进制包,如果你是其它版本,记得改一下下面的版本号

rm -rf node-v16.15.0-linux-x64.tar.xz


· 重命名文件夹
解压好后,刷新一下文件树,你就能看到刚刚下载的node了,文件夹名字是带有版本号的,右键这里,把文件夹名字改为node

· 配置环境变量
命令行输入这个命令

vi /etc/profile


 然后在下方插入这个代码

export PATH=$PATH:/opt/software/node/bin/

然后按esc退出编辑模式,然后输入 :wq,然后回车即可保存 (注意冒号不要漏了)


 然后在命令行输入,保存环境变量 

source /etc/profile


· 检验是否安装成功
命令行输入 node -v 和 npm -v,查看node版本,有显示说明成功,报错的话请检查上述步骤

 · 更换镜像与下载pnpm、yarn、cnpm
在命令行依次输入下面代码,注意注释不要复制进去了

#用淘宝镜像下载cnpm
npm install -g cnpm --registry=https://registry.npm.taobao.org 
 
#用cnpm下载yarn
cnpm i yarn -g
 
#yarn设置淘宝镜像
yarn config set registry https://registry.npm.taobao.org
 
#cnpm下载pnpm
cnpm i pnpm -g
 
#查看源
pnpm config get registry 

#切换淘宝源
pnpm config set registry https://registry.npm.taobao.org

2.安装git并配置SSH

· 下载git
        使用的是centOS,如果你不是这个操作系统,下方的yum命令报错,可以搜索查看自己的操作系统如何下载git。

        是centOS的话,如果报错没有yum这个命令,那么先使用这个 sudo apt install yum 命令安装,如果还是不行就查看这个文档 解决yum报错的问题

yum install git

#可以查看是否安装成功
git --version 


· 配置用户名和邮箱

git config --global user.name "这里输入用户名"
git config --global user.email "这里输入邮箱@xx.com"
git config --global --list


· 配置SSH公钥

git config --global user.name "这里输入用户名"
git config --global user.email "这里输入邮箱@xx.com"
git config --global --list


3. 上传nodejs项目

#进入到项目目录
cd /home/aidev

#然后克隆项目的存储库  
git clone xxxx

#刷新一下文件树,就会发现项目已经下载好了 

#进入项目文件夹

cd web-react-app //这里填写刚刚克隆好的仓库目录
 
#安装依赖
cnpm i // 或者 pnpm i 等皆可

#尝试运行,根据你的项目类型,运行不同的代码,运行成功后,再进行下面的步骤

pnpm dev //next.js

node xxx.js //node.js


4. 配置安全组


根据我们运行的服务器的端口号,需要配置安全组,才能在互联网上访问到你的服务

 以阿里云为例(其它请查看对应教程),假设我们刚刚运行的项目端口号为 :3000

 5. 测试在互联网上能否访问成功


打开浏览器,输入你的服务器ip地址,再加上对应的端口号,看看能否正常访问,能正常访问说明服务运行成功。

二、使用pm2持久化运行服务


        之前使用的命令 node xxx.js 、pnpm dev 等,当你关闭了命令行窗口时,服务就挂了,所以需要pm2来帮我们持久化运行服务。

1. 全局安装pm2

npm i pm2 -g


2. pm2常见命令

#启动并命名进程为my-server
pm2 start index.js --name my-server

#显示所有进程
pm2 list

#停止my-server这个进程
pm2 stop my-server

#启动所有进程
pm2 restart all

#删除某个进程
pm2 delete my-server

#查看某个进程的详情信息
pm2 show my-server

#查看日志信息
pm2 logs

#查看my-server这个服务的日志
pm2 log my-server 


3. 运行Next.js 服务 ,在项目目录执行

pm2 start npm --name "my-server" -- run start

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要使用nginx部署next.js,首先需要修改nginx.conf文件。可以将location /的proxy_pass指令修改为代理到运行next.js项目的端口,例如http://127.0.0.1:800。这样当访问hongbin.xyz时,nginx会将请求代理到指定的端口上。 另外,还可以通过修改nginx的配置文件来实现代理功能。在server块中,可以设置listen指令监听指定的端口(例如80),并设置server_name指令为需要访问的域名(例如hongbin.xyz)。然后,将location /的proxy_pass指令修改为代理到运行next.js项目的端口(例如http://127.0.0.1:800)。这样就可以通过访问hongbin.xyz来访问next.js项目了。 另外,如果需要修改next.js项目运行的端口,可以通过修改项目的package.json文件中的scripts字段来实现。在scripts字段中,可以设置start指令为next start -p指定的端口(例如8888)。这样,在运行npm start启动next.js项目时,项目将会在指定的端口上运行。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Linux 使用Nginx部署Next项目,并使用pm2进程守护](https://blog.csdn.net/weixin_43233914/article/details/126287099)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [在Ubuntu 上使用 Nginx 和 PM2 部署 Nextjs](https://blog.csdn.net/printf_hello/article/details/124979521)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值