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

参考文档

相关文章
kde
|
1月前
|
应用服务中间件 网络安全 nginx
手把手教你使用 Docker 部署 Nginx 教程
本文详解Nginx核心功能与Docker部署优势,涵盖镜像拉取、容器化部署(快速、挂载、Compose)、HTTPS配置及常见问题处理,助力高效搭建稳定Web服务。
kde
760 4
|
2月前
|
JavaScript 算法 前端开发
【Docker项目实战】使用Docker部署paopao-ce微社区
【Docker项目实战】使用Docker部署paopao-ce微社区
352 84
【Docker项目实战】使用Docker部署paopao-ce微社区
|
1月前
|
应用服务中间件 Linux nginx
在虚拟机Docker环境下部署Nginx的步骤。
以上就是在Docker环境下部署Nginx的步骤。需要注意,Docker和Nginix都有很多高级用法和细节需要掌握,以上只是一个基础入门级别的教程。如果你想要更深入地学习和使用它们,请参考官方文档或者其他专业书籍。
113 5
|
2月前
|
存储 Docker Python
docker 部署 sftp
本文介绍SFTP服务的部署与配置,包括users.conf用户配置规则、Docker容器运行命令及上传目录权限说明,重点解析atmoz/sftp镜像的chroot机制与子目录映射,确保用户登录后正确访问/upload目录,并提供Python脚本实现文件上传示例。
226 12
docker 部署 sftp
|
2月前
|
运维 Linux 数据库
基于 Docker 部署 n8n 指南,新手一看就会
本教程详解如何通过 Docker 快速部署开源自动化工具 n8n,适合新手快速上手。内容涵盖官方部署步骤、常见难点及第三方一键部署方案,助你高效搭建自动化工作流平台。
1051 6
kde
|
1月前
|
存储 NoSQL Redis
手把手教你用 Docker 部署 Redis
Redis是高性能内存数据库,支持多种数据结构,适用于缓存、消息队列等场景。本文介绍如何通过Docker快速拉取轩辕镜像并部署Redis,涵盖快速启动、持久化存储及docker-compose配置,助力开发者高效搭建稳定服务。
kde
642 7
kde
|
1月前
|
存储 搜索推荐 数据库
🚀 RAGFlow Docker 部署全流程教程
RAGFlow是开源的下一代RAG系统,融合向量数据库与大模型,支持全文检索、插件化引擎切换,适用于企业知识库、智能客服等场景。支持Docker一键部署,提供轻量与完整版本,助力高效搭建私有化AI问答平台。
kde
1668 8
kde
|
1月前
|
存储 关系型数据库 MySQL
MySQL Docker 容器化部署全指南
MySQL是一款开源关系型数据库,广泛用于Web及企业应用。Docker容器化部署可解决环境不一致、依赖冲突问题,实现高效、隔离、轻量的MySQL服务运行,支持数据持久化与快速迁移,适用于开发、测试及生产环境。
kde
416 4