CentOS8使用Node+Nginx+PM2部署Nuxt项目流程

以下方法在腾讯云CentOS8使用亲测可用

安装node

方法自行百度

拷贝项目只服务器

.nuxt
assets
components
layouts
middleware
pages
plugins
static
store
nuxt.config.js
package.json
package-lock.json
tailwind.config.js

安装项目依赖

npm install

打包

npm run build

nuxt.config.js配置:

export default {
  server: { // 配置Nuxt服务器
    port: 8080, // default: 3000
    host: '0.0.0.0', // default: localhost
    timing: false
  },

配置nginx.conf

http {
    # 创建一个 Nuxt Server 服务
    upstream nuxtDemo {
        # 这里server就是nuxt.config.js理配置的服务器ip
        server 0.0.0.0:8080;
    }

    server {
        listen 8080; # 在服务器创建的端口
        server_name new-obj.com;  # 这里是你解析后的域名
        location / {
            proxy_pass http://nuxtDemo;  #  创建的 Nuxt Server 服务名
            index index.html index.htm;  #  默认打开的页面
        }
    }
}

安装 pm2

npm install pm2@latest -g

// 安装成功后提示
npm WARN deprecated [email protected]: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)
/usr/local/src/nodejs/bin/pm2 -> /usr/local/src/nodejs/lib/node_modules/pm2/bin/pm2
/usr/local/src/nodejs/bin/pm2-dev -> /usr/local/src/nodejs/lib/node_modules/pm2/bin/pm2-dev
/usr/local/src/nodejs/bin/pm2-docker -> /usr/local/src/nodejs/lib/node_modules/pm2/bin/pm2-docker
/usr/local/src/nodejs/bin/pm2-runtime -> /usr/local/src/nodejs/lib/node_modules/pm2/bin/pm2-runtime
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@~2.3.1 (node_modules/pm2/node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})

+ [email protected]

执行pm2 -h 查询使用方式

pm2 -h

// 报错信息
-bash: pm2: command not found

解决方法 添加软链接(如果没有出现报错信息,请忽略)

// -s 后的第一个路径从安装成功后的提示信息里找,第三行/usr/local/src/nodejs/lib/node_modules/pm2/bin/pm2
ln -s /usr/local/src/nodejs/lib/node_modules/pm2/bin/pm2 /usr/local/bin/pm2

启动项目:

pm2 start npm --name "nuxt" -- run start // nuxt 项目名称

保存当前进程状态

pm2 save

生成开机自启服务

systemctl enable pm2-root

查看状态列表

pm2 ls
id name mode status cpu memory
0 nuxt fork 0 online 0% 45.8mb

你可能感兴趣的:(CentOS8使用Node+Nginx+PM2部署Nuxt项目流程)