PM2+Linux部署nuxt.js

news/2024/5/2 14:47:51/文章来源:https://blog.csdn.net/qq_42277704/article/details/137591940

PM2+Linux部署nuxt.js

开始我使用了docker部署我的springboot项目,链接在这里,因为我是前后端分离项目,前端使用的nuxt.js框架,所以需要另外部署一下项目,以下是部署流程

1.将本地的nuxt项目打包

npm run build
#生成的dist在.nuxt文件夹中

2.部署linux服务器环境

1.将.nuxt,static,nuxt.config.js,package.json,package-lock.json放进自己创建的文件夹中,我这里的创建在/home/vue-front中

#注意  在nuxt.config.js中要添加这个配置
server: {port: 8170, // default: 3000host: '0.0.0.0' // default: localhost
}

2.执行npm install方法构建环境

npm install

[外链图片转存中…(img-t8DL3IRr-1712724068296)]

这个图就代表成功

3.配置nginx环境

我用的docker配置nginx

#1.拉取镜像docker pull nginx
#2./home文件夹下新建docker文件夹,docker文件夹下新建nginx文件夹,nginx文件夹下新建conf.d文件夹,html文件夹,大致结构如下:
/home|---docker|----nginx|----conf.d|----html
#3.在conf.d文件夹下新建default.conf文件,内容如下:
upstream nuxt {# 这里就是上面配置的 Node ip + 端口号,之前默认是 localhost:3000server 172.19.1.180:8170;keepalive 64;}
server {listen       8170;# 这里的端口服务器的端口server_name  114.55.238.50;# 服务器的域名location / {proxy_pass http://nuxt;# (这里的nuxt对应上面upstream xxx)index index.html index.htm;# try_files $uri $uri/ /index.html; #解决页面刷新404问题}
}
#4.启动容器
docker run -d -p 80:80 -v /home/docker/nginx/conf.d:/etc/nginx/conf.d --name mynginx nginx

4.启动nuxt

npm run start 

[外链图片转存中…(img-5aeOQgVS-1712724068297)]

这个页面就代表启动成功

5.使用ip进行访问

#因为我nginx上使用的114.55.238.50这个域名,所以直接使用这个进行访问
114.55.238.50:8170

6.使用PM2进行nuxt项目的进程守护

因为如果仅仅使用npm run start只是在服务器上暂时开启这个服务,跟执行npm run dev一样,使用过npm run dev的童鞋都知道如果在运行中的时候讲命令行工具关闭或者结束进程,咱们的网站就访问不了了,同样在服务器端也存在这种问题,比如服务器进程中断了,都会导致网站无法访问,所以这个时候咱们就需要使用pm2来做一个进程守护,具体添加pm2的流程及配置见下文:

1.使用pm2之前我们需要先进行安装pm2包,在我们本地开发也好,或者在服务器上操作都一样,打开终端命令行工具,输入以下命令:(Node环境下)

npm install -g pm2

安装好以后可以使用以下命令来查看pm2是否安装成功,能够返回版本号说明安装成功

pm2 -v

2.在程序的根目录创建pm2.json,内容为下:

[{"name": "项目名","script": "npm run start","env_dev": {"NODE_ENV": "development"},"env_production": {"NODE_ENV": "production"},}
]

3.启动pm2

pm2 start pm2.json

7.PM2常用命令

pm2 list                      # 列表 PM2 启动的所有的应用程序
pm2 monit                     # 显示每个应用程序的CPU和内存占用情况
pm2 show [app-name]           # 显示应用程序的所有信息
pm2 logs                      # 显示所有应用程序的日志
pm2 logs [app-name]           # 显示指定应用程序的日志
pm2 flush                     # 清空所有日志文件
pm2 stop all                  # 停止所有的应用程
pm2 stop 0                    # 停止 id为 0的指定应用程序
pm2 restart all               # 重启所有应用
pm2 reload all                # 重启 cluster mode下的所有应用
pm2 delete all                # 关闭并删除所有应用
pm2 delete 0                  # 删除指定应用 id 0
pm2 startup                   # 创建开机自启动命令
pm2 save                      # 保存当前应用列表

关闭并删除所有应用
pm2 delete 0 # 删除指定应用 id 0
pm2 startup # 创建开机自启动命令
pm2 save # 保存当前应用列表

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_1046038.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Node.js常用快捷键

1.常用的终端命令: (1)del 文件名: 删除文件 (2)ipconfig: 查看IP命令 (3)mkdir 目录名 :在当前目录新建指定目录 (4)rd 目录名:在当前…

【opencv】示例-ela.cpp JPEG图像的错误等级分析(ELA) 通过分析图像压缩后的差异来检测图像是否被篡改过...

ela_modified.jpg 原始ela_modified压缩后再解压得到compressed_img 差异图像Ela 这段代码的功能是实现JPEG图像的错误等级分析(ELA),通过分析图像压缩后的差异来检测图像是否被篡改过。程序会首先读取一张图片,然后对其应用质量…

PHP自助建站系统,小白也能自己搭建网站

无需懂代码,用 自助建站 做企业官网就像做PPT一样简单,您可以亲自操刀做想要的效果! 自助建站是一款简单、快捷、高效的工具,可以帮助您制作响应式网站。我们的自助建站系统,将传统的编码工作转化为直观的拖拽操作和文…

Qt | 元对象系统

一、QByteArray 类简介 1、QByteArray 类简介  该类是一个用于处理字符串的类似于 C++的 string 类型的类,在 Qt 中,对字符串的处理,经常使用的是 QString 类,该类保证字符串以\0结尾,并使用隐式共享(copy-on-write)来减少内存用量和不必要的数据复制。  QByteArra…

Web3 的社会影响:数字社会的新时代

随着科技的不断进步和创新,人类社会正逐步进入数字化时代的新阶段。Web3 技术作为数字社会的重要组成部分,正在以前所未有的方式重塑着我们的社会生活和交往方式。本文将探讨 Web3 技术对社会的影响,以及它所带来的数字社会的新时代。 1. Web…

Gitlab全量迁移

Gitlab全量迁移 一、背景1.前提条件 一、背景 公司研发使用的Gitlab由于服务器下架需要迁移到新的Gitlab服务器上。Gitlab官方推荐了先备份然后再恢复的方法。个人采用官方的另外一种方法,就写这篇文章给需要的小伙伴参考。 源Gitlab: http://old.mygitlab.com #地…

数据应用OneID:ID-Mapping Spark GraphX实现

前言 说明 以用户实体为例,ID 类型包含 user_id 和 device_id。当然还有其他类型id。不同id可以获取到的阶段、生命周期均不相同。 device_id 生命周期通常指的是一个设备从首次被识别到不再活跃的整个时间段。 user_id是用户登录之后系统分配的唯一标识&#xff…

3D数据发布工具HOOPS Publish如何将3D模型转换成PDF格式?

在现代科技发展的推动下,3D技术在各个行业中扮演着越来越重要的角色。从工程设计到医疗保健,从建筑规划到教育培训,3D模型都成为了理解、沟通和展示复杂数据的主要工具。而将这些3D模型转换成PDF格式,能够使其更易于共享、存档和展…

配置交换机端口安全

1、实验目的 通过本实验可以掌握: 交换机管理地址配置及接口配置。查看交换机的MAC地址表。配置静态端口安全、动态端口安全和粘滞端口安全的方法。 2、实验拓扑 配置交换机端口安全的实验拓扑如图所示。 配置交换机端口安全的实验拓扑 3、实验步骤 &#xff…

nginx配置证书和私钥进行SSL通信验证

文章目录 一、背景1.1 秘钥和证书是两个东西吗?1.2 介绍下nginx配置文件中参数ssl_certificate和ssl_certificate_key1.3介绍下nginx支持的证书类型1.4 目前nginx支持哪种证书格式?1.5 nginx修改配置文件目前方式也会有所不同1.6 介绍下不通格式的证书哪…

《由浅入深学习SAP财务》:第2章 总账模块 - 2.6 定期处理 - 2.6.3 月末操作:外币评估

2.6.3 月末操作:外币评估 企业的外币业务在记账时一般使用期初的汇率或者即时汇率,但在月末,需要按照月末汇率对外币的余额或者未清项进行重估(revaluation)。 企业在资产负债表日,应当按照下列规…

【springboot开发】Gradle VS Maven

前言: java构建工具的主要作用是依赖管理和构建的生命周期管理。gradle和maven是目前java中最流行的两个构建工具,springboot常用maven,Android studio使用gradle。 目录 1. 简介2. Maven2.1 安装2.2 依赖管理2.3 构建生命周期管理 3. Gradle…

VirusTaxo:病毒物种注释

https://github.com/omics-lab/VirusTaxo 安装 git clone https://github.com/omics-lab/VirusTaxo mamba create -n VirusTaxo python3.10 mamba activate VirusTaxo cd VirusTaxo python3 -m venv environment source ./environment/bin/activate pip install -r require…

SpringCloud系列(2)--SpringCloud和SpringBoot技术选型

前言:SpringCloud是微服务架构的一揽子解决方案,SpringBoot是一种技术,要使用SpringCloud,也需要使用到SpringBoot,所以要使用SpringCloud时,必须也要考虑到SpringBoot的适配问题 1、查看SpringCloud和与之…

最好的 iPhone 解锁器解决方案功能、优点和缺点

现最受好评的 iPhone 解锁器,例如 奇客解锁、iPassGo 等。深入了解它们的优缺点和兼容性,以做出明智的决定。了解如何解锁 iPhone 并解决有关解锁方法、PIN 绕过和潜在风险的常见问题。 1、奇客手机解锁 奇客手机解锁是一款适用于 iOS 的多功能解锁工具…

2024春算法训练4——函数与递归题解

一、前言 感觉这次的题目都很好,但是E题....(我太菜了想不到),别人的题解都上百行了,晕; 二、题解 A-[NOIP2010]数字统计_2024春算法训练4——函数与递归 (nowcoder.com) 这种题目有两种做法:…

网站SEO关键词规划时如何筛选出合适的关键词?

在网站SEO优化过程中,关键词布局是一个至关重要的环节。首先,我们需要确定核心关键词,然后通过各种策略和方法对关键词进行扩展。完成关键词扩展后,接下来的任务就是对这些扩展后的关键词进行筛选。那么,如何进行有效的…

pytorch3d、Detectron2编译安装

基础环境: python:3.6 ubuntu:18.04 pytorch:1.8 cuda:10.2 一、pytorch3d编译 官方指南 GitCode - 开发者的代码家园 注意:cuda11以下的版本,需要安装CUB libaray,cuda11以上的版…

开源项目one-api的k8s容器化部署(上)-- 制作镜像及部署准备

一、背景 最近需要对开源项目one-api进行k8s容器化部署,主要分以下几个步骤: 制作docker镜像申请mysql和redis数据库docker-compose部署方式k8s部署方式 整个的篇幅比较长,将会分成上下两篇来阐述。 二、制作docker镜像 开源项目one-api…

Idea集成Docker的快捷部署

Idea集成Docker的快捷部署 配置Docker远程访问1.1 修改 `/lib/systemd/system/docker.service`1.2 替换`ExecStart`1.3 重启docker服务1.4 监听端口是否被占用1.5 服务器防火墙开启2375端口1.6 测试配置IDEA2.1 下载docker插件2.2 添加docker连接2.3 配置容器镜像加速器2.4 配置…