linux部署nuxt.js项目

1、安装node.js环境

node.js是运行在服务端的JavaScript,基于Chrome JavaScript V8引擎建立的平台

下载并安装node.js
下载node稳定版v10.15.3到本地

wget https://nodejs.org/dist/v10.15.3/node-v10.15.3-linux-x64.tar.xz

下载完后,将其解压

tar xvJf node-v10.15.3-linux-x64.tar.xz

将解压的node.js目录移动到/usr/local目录下

mv node-v10.15.3-linux-x64  /usr/local/node-v10

配置node软连接到/bin目录

ln -s /usr/local/node-v10/bin/node  /usr/local/bin/node
2、配置和使用npm

配置npm
npm 是 Node.js 的包管理和分发工具。它可以让 Node.js 开发者能够更加轻松的共享代码和共用代码片段
下载 node 的压缩包中已经包含了 npm , 我们只需要将其软链接到 bin 目录下即可

ln -s /usr/local/node-v10/bin/npm  /usr/local/bin/npm

生效环境变量

source /etc/profile

通过npm安装进程管理模块 forever

//安装
npm install forever -g

通过npm安装 pm2

// 安装
npm install pm2 -g

// 创建软连接
ln -s /usr/local/node-v10/bin/pm2 /usr/local/bin

通过npm安装淘宝镜像 cnpm

//下载
npm install -g cnpm --registry=https://registry.npm.taobao.org 

//创建软连接
ln -s /usr/local/node-v10/bin/cnpm  /usr/local/bin/cnpm
完成以下操作,安装Nginx。

1 运行以下命令安装Nginx。

yum -y install nginx

2 运行以下命令查看Nginx版本。

nginx -v         

3 返回结果如下所示,表示Nginx安装成功。

nginx version: nginx/1.12.2    
修改Nginx配置文件

1 进入配置文件编辑页面

cd /etc/nginx/nginx.conf

upstream nuxt {
        server localhost:3000; //nuxt.js  运行npm run start启动后的本地访问链接
    }

    server {
        listen       8081; // 外网访问的端口号
        server_name  47.96.80.74;  // 服务器公网IP 或者域名
        # root         /usr/share/nginx/html;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d


        location / {
            proxy_pass   http://nuxtserver1;
            index  index.html index.htm;
        }


        error_page 404 /404.html;
            location = /40x.html {
        }

        error_page 500 502 503 504 /50x.html;
            location = /50x.html {
        }
    }

Nginx重启步骤

1 进入Nginx文件路径

cd /usr/sbin

2 执行重启指令

./nginx -s reload
启动pm2 保护进程
cd ‘项目目录’
pm2 start ./node_modules/nuxt/bin/nuxt.js //启动进程

进入项目根目录执行 npm run build npm run start
然后执行pm2 start npm --name "show_sir_nuxt" -- run start启动Nuxt项目,
使用pm2启动Nuxt项目,自动加入了进程守护,Xshell窗口关闭后,进程也不会关闭

你可能感兴趣的:(linux部署nuxt.js项目)