如何使用pm2部署前端项目

前端部署有很多种方式,场景的有Jenkins,pm2,docker等技术,今天主要介绍使用pm2部署,因为公司一直在使用,也一直想彻底的理解部署的流程。

pm2是什么?

PM2 是一个守护进程管理器,将帮助您管理和保持应用程序24在线,好强大呀,牛B!!!
在这里插入图片描述

官方文档地址:连接

开始上手

使用要从安装开始yarn global add pm2,现在在项目中有这样一个文件夹app.js代码如下

//https://xxx.com/user/1.html
//https://xxx.com/user/2.html
const express = require('express')
const app = express()
const routerUser = express.Router()
app.use("/user", routerUser)
routerUser.get("/1.html", function (req, res) {
  res.send("1")
})
routerUser.get("/2.html", function (req, res) {
  res.send("2")
})
app.listen(4000)

使用pm2 start app.js启动
在这里插入图片描述
页面会显示出应用的信息,说明启动成功,如果不想要了,使用命令进行删除。删除的时候通过名字,在表格中可以查到的。

pm2 delete app

通过上面的命令启动的应用并不会创建集群,并没有进程守护。

通常我们会写个配置文件ecosystem.config.js进行配置。通过命令生成配置文件,文件的名字是固定的,不得更改。

pm2 ecosystem
module.exports = {
  apps : [{
    name: 'API',
    script: 'app.js',

    // Options reference: https://pm2.io/doc/en/runtime/reference/ecosystem-file/
    args: 'one two',
    instances: 1,
    autorestart: true,
    watch: false,
    max_memory_restart: '1G',
    env: {
      NODE_ENV: 'development'
    },
    env_production: {
      NODE_ENV: 'production'
    }
  }],

  deploy : {
    production : {
      user : 'node',
      host : '212.83.163.1',
      ref  : 'origin/master',
      repo : 'git@github.com:repo.git',
      path : '/var/www/production',
      'post-deploy' : 'npm install && pm2 reload ecosystem.config.js --env production'
    }
  }
};
pm2 start ecosystem.config.js

部署到服务器上

之前我们都是在本地尝试启动我们的项目,但是开发完成,我们需要部署到测试环境怎么办,那就部署项目了,如果我们的项目是Vue和React写的静态页面,通常在服务器端会启动Nginx作为静态资源访问,把资源放到指定的目录。

如果你没有服务器,建议购买一台服务器,阿里云连接

我们用vue create hello-world创建一个Vue应用,然后是在项目里面使用pm2 ecosystem生成配置文件,我们使用pm2配置文件可以登录到远程服务器,然后执行命令,拉代码和构建等操作,来实现部署。

module.exports = {
  deploy : {
    production : {
      user : 'node', // 以什么身份登录远程服务器,这里是node用户登录,建议使用root用户,权限更大
      host : '192.168.4.142', // 远程服务器地址,需要配ssh登录
      ref  : 'origin/master', // 需要部署的分支
      repo : 'git@github.com:repo.git', // 代码git地址,需要配ssh登录
      path : '/var/www/production', // 文件存放的地址
      'post-deploy' : 'npm install && npm run build' // 拉完代码需要执行的构建命令
    }
  }
};

首先本地的电脑要能通过ssh登录服务器,服务器要能通过ssh登录到Git服务器,这两部操作都完成了,把代码推送到Git服务器,本地代码执行

首次部署执行的命令(只执行一次)
    $ pm2 deploy ecosystem.config.js production setup

之后部署执行的命令
    $ pm2 deploy ecosystem.config.js production

在这里插入图片描述

如图片提示的内容表示部署成功了,登录到你的服务器,可以看到我们的文件已经传到服务器了
在这里插入图片描述

nginx配置是这样的,路径地址要保持一致,/var/www/production默认的源文件在current或者source里面,打包的目录是dist,所有目录目录要加上/var/www/production/current/dist
在这里插入图片描述
代码仓库地址:连接

你可以按照以下步骤在 Linux 服务器上部署前端项目: 1. 安装必要的软件和工具: - 安装 Node.js:可以从 Node.js 官方网站下载并按照它们的指南进行安装。 - 安装 Git:使用包管理工具(如 apt、yum 等)安装 Git。 2. 克隆前端代码仓库: - 使用 Git 命令克隆前端项目的代码仓库到服务器上的目标位置。例如,使用以下命令克隆代码库: ``` git clone <代码仓库URL> ``` - 进入项目目录: ``` cd <项目目录> ``` 3. 安装项目依赖项: - 使用 npm(Node.js 的包管理器)安装项目所需的依赖项。运行以下命令: ``` npm install ``` 4. 构建前端项目: - 执行构建命令来编译和构建前端项目。具体命令与项目工具和框架有关,通常是 `npm run build` 或类似的命令。这将生成一个用于生产环境的优化版本的前端文件。 5. 配置 Web 服务器: - 根据你使用的 Web 服务器软件,配置服务器以提供前端文件。一般来说,你需要将服务器的根目录配置为编译后的前端项目的目录。 6. 启动 Web 服务器: - 启动 Web 服务器并确保它监听正确的端口。你可以使用命令行启动服务器,也可以使用守护进程管理工具(如 systemd、pm2 等)来管理 Web 服务器的生命周期。 7. 验证部署: - 使用浏览器访问服务器的 IP 地址或域名,并确认前端项目能够正常加载和运行。 这些步骤提供了一个基本的指南来在 Linux 服务器上部署前端项目。具体的步骤可能会因项目的工具和框架而有所不同,所以请根据你的项目需求进行相应的调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前端精髓

小礼物走一走,来CSDN关注我

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值