Nuxt.js项目Docker部署和pm2部署

简介: Nuxt.js 是一个基于 Vue.js 的轻量级应用框架,可用来创建服务端渲染应用。
### pm2部署

pm2是一个node进程守护 、监控、自动重启以及生成日志的软件,它可以帮你很好的管理node项目。

安装node、pm2等必要依赖

# 淘宝npm
npm install -g cnpm --registry=https://registry.npm.taobao.org
# pm2 安装
npm install pm2 -g
# 软连接(注意软连接路径必须是绝对路径)
ln -s /usr/local/node8.11.4/bin/pm2  /usr/local/bin/pm2

nuxt项目打包

  • 执行npm run build,未报异常说明可以正常运行部署,接着Ctrl+C停止nuxt即可,若本地再次运行使用npm startnpm run dev,会覆盖刚才打包的内容。

该命令执行后,会在项目的.nuxt生成dist目录,此时只需要把下面的文件复制到服务器对应的目录下即可

# 运行 npm run build 后,复制下面的4个文件到服务器
.nuxt
static
nuxt.config.js
package.json

项目运行

需要注意的是,--name后面的名字是package.json中第一行的name

# 在上传到服务器的目录下运行,状态为online,说明部署成功
pm2 start npm --name "nuxt-django" -- run start --watch

相关命令

# 列表 PM2 启动的所有的应用程序
pm2 list
# 显示指定应用程序的日志
pm2 logs [app-name]
# 停止所有的应用程序
pm2 stop all
# 重启所有应用
pm2 restart all

docker部署

Dockerfile

  • 新建Dockerfile内容如下
FROM node:9.0.0
MAINTAINER www.gaozhe.net
ENV NODE_ENV=production
ENV HOST 0.0.0.0
RUN mkdir -p /app
COPY . /app
WORKDIR /app
EXPOSE 3000
# 国内环境使用,非国内环境使用会报错
RUN npm config set registry https://registry.npm.taobao.org
RUN npm installCMD ["npm", "start"]

构建

  • 文件上传

把打包后的四个文件上传到服务器对应文件夹下,将上面新建的Dockerfile也放在此目录下

# 打包为镜像,上传文件的目录下运行
docker build -t testimage .

运行

  • 运行容器
docker run -dti --network=host --restart=always --name test testimage
  • 查看是否成功部署
# 未打印异常说明启动成功
docker logs test
# 查看nuxt默认端口3000是否开启成功
netstat -ntlp | grep 3000

参考文档

相关文章
|
5天前
|
人工智能 API 数据库
FastGPT一站式解决方案[1-部署篇]:轻松实现RAG-智能问答系统(含sealos云端部署、docker部署、OneAPI&Xinference模型接入)
【9月更文挑战第5天】 FastGPT一站式解决方案[1-部署篇]:轻松实现RAG-智能问答系统(含sealos云端部署、docker部署、OneAPI&Xinference模型接入)
 FastGPT一站式解决方案[1-部署篇]:轻松实现RAG-智能问答系统(含sealos云端部署、docker部署、OneAPI&Xinference模型接入)
|
15天前
|
Docker 容器
Docker自建仓库之Harbor高可用部署实战篇
关于如何部署Harbor高可用性的实战教程,涵盖了从单机部署到镜像仓库同步的详细步骤。
54 15
Docker自建仓库之Harbor高可用部署实战篇
|
15天前
|
NoSQL 关系型数据库 Redis
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
mall在linux环境下的部署(基于Docker容器),docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongodb、minio详细教程,拉取镜像、运行容器
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
|
15天前
|
虚拟化 Docker Windows
window 10专业版部署docker环境
本文介绍了如何在Windows 10专业版上部署Docker环境,包括安装步骤、配置镜像加速以及可能遇到的错误处理。
35 2
window 10专业版部署docker环境
|
3天前
|
Devops jenkins 持续交付
DevOps实践:构建和部署一个Docker化的应用
【9月更文挑战第14天】在当今快节奏的软件开发领域,DevOps已经成为提升效率、加速交付的关键。本文将引导你理解DevOps的核心概念,并通过一个实际的示例—构建和部署一个Docker化的应用—来深入探讨其实践方法。我们将从简单的应用出发,逐步实现Docker容器化,并最终通过CI/CD流水线自动化部署过程。这不仅是对DevOps流程的一次实操演练,也是对现代软件开发理念的一次深刻体验。
|
16天前
|
存储 关系型数据库 MySQL
使用Docker快速部署Mysql服务器
本文介绍了如何使用Docker快速部署MySQL服务器,包括下载官方MySQL镜像、启动容器、设置密码、连接MySQL服务器以及注意事项。
96 18
|
6天前
|
JavaScript 前端开发 UED
让 HTML 向 Vue.js 华丽转身:如何把 `wangEditor` 仿腾讯文档项目整合进 Vue.js
让 HTML 向 Vue.js 华丽转身:如何把 `wangEditor` 仿腾讯文档项目整合进 Vue.js
|
15天前
|
存储 测试技术 数据安全/隐私保护
Docker自建仓库之Harbor部署实战
关于如何部署和使用Harbor作为Docker企业级私有镜像仓库的详细教程。
35 12
|
15天前
|
运维 数据安全/隐私保护 Docker
Docker自建仓库之Docker Registry部署实战
关于如何使用Docker Registry镜像搭建本地私有Docker仓库的实战教程,包括了下载镜像、创建授权目录和用户名密码、启动Registry容器、验证端口和容器、测试登录仓库、上传和下载镜像的详细步骤。
56 5
|
15天前
|
NoSQL 关系型数据库 数据库
JumpServer的Docker部署实战案例
JumpServer的Docker部署实战案例,详细介绍了JumpServer的概述、环境准备、基于Docker的快速部署步骤,以及如何访问JumpServer的WebUI。
17 0