当前位置: 首页 > 知识库问答 >
问题:

docker,pm2部署nuxt项目启动报错?

夏侯浩气
2024-01-10

项目使用 nuxt2 写的, 现在进行了 npm run build 打包, 想在生产环境中使用docker部署,部署方式如下

上传项目

将打包后的 .nuxt, static, nuxt.config.js, package.json, node_modules上传至服务器 /home/wwwroot/default 下

(nginx等的配置略)

在项目目录创建启动文件

ecosystem.config.json

{    "apps": {        "name": "web",        "cwd": "/home/node",        "script": "./node_modules/nuxt/bin/nuxt.js",        "args": "-c /home/node/nuxt.config.js",        "exec_mode": "cluster",        "instances": 4,        "watch":false,        "error_file": "/home/logs/web-err.log",        "out_file": "/home/logs/web-out.log",        "log_date_format": "YYYY-MM-DD HH:mm:ss",        "autorestart": true,        "max_memory_restart": "500M"    }}

一. 使用node镜像构建

直接基于拉取的node:16.14.0镜像运行一个容器

$ docker pull node:16.14.0$ docker run -itd --name nuxtProject01 \-p 3000:3000 \-v /home/wwwroot/default:/home/node \-v /home/logs:/home/logs node:16.14.0

然后进入容器内

$ docker exec -it nuxtProject01 bash

安装pm2

$ npm install pm2 -g

进入容器项目目录并执行ecosystem.config.json

$ cd /home/node && pm2 start ecosystem.config.json

项目可以正常运行

二. 现在使用Dockerfile的方式

Dockerfile文件:

FROM node:16.14.0RUN npm config set registry https://registry.npm.taobao.org    RUN npm install pm2@5.2.0 -g    WORKDIR /home/nodeENV NODE_ENV=productionENV HOST 0.0.0.0    EXPOSE 3000CMD ["pm2-runtime", "start", "ecosystem.config.json"]

使用该 Dockerfile 构建自定义镜像:

$ docker build --no-cache -t nuxtImage:v1.0 .

基于镜像运行一个容器:

$ docker run -itd --name nuxtProject01 \-p 3000:3000 \-v /home/wwwroot/default:/home/node \-v /home/logs:/home/logs nuxtImage:v1.0

现在访问服务,有以下报错:

No build files found in /home/node/ecosystem.config.json/.nuxt/dist/server.                        02:09:50Use either `nuxt build` or `builder.build()` or start nuxt in development mode.  Use either `nuxt build` or `builder.build()` or start nuxt in development mode.  at VueRenderer._ready (node_modules/@nuxt/vue-renderer/dist/vue-renderer.js:4219:13)  at async Server.ready (node_modules/@nuxt/server/dist/server.js:637:5)  at async Nuxt._init (node_modules/@nuxt/core/dist/core.js:720:7)
✖ Nuxt Fatal Error                                                                   │   │                                                                                        │   │   Error: No build files found in /home/node/ecosystem.config.json/.nuxt/dist/server.   │   │   Use either `nuxt build` or `builder.build()` or start nuxt in development mode.

找不到原因头疼

共有1个答案

艾飞宇
2024-01-10

你检查一下,怎么ecosystem.config.json 变文件夹了 /home/node/ecosystem.config.json/.nuxt/dist/server

 类似资料:
  • 提示:找不到进程或命名空间日志 我的命令是:

  • 本文向大家介绍利用forever和pm2部署node.js项目过程,包括了利用forever和pm2部署node.js项目过程的使用技巧和注意事项,需要的朋友参考一下 本文主要给大家分享的是利用forever和pm2部署node.js项目过程的相关内容,分享出来供大家参考学习,下面来看看详细的介绍: 一、forever forever可以在cmd或ssh连接断开时,让项目一直运行,而且可以在项目崩

  • 我使用下面的dockerfile生成一个图像调用userservice 然后我使用以下命令运行容器 所以我去检查编译的字节码版本,确实是52,我不知道为什么这个错误还是报告

  • 本文向大家介绍Docker部署web项目的实现,包括了Docker部署web项目的实现的使用技巧和注意事项,需要的朋友参考一下 上一篇已经安装好docker服务,下面继续介绍如何部署web项目 一:随便创建目录dock,准备好如下文件: 二、编写Dockerfile,通过它能快速地构建docker镜像 新增如下配置 解释: (1)FROM centos 表示从docker官方仓库中获取centos

  • 问题描述: 项目代码更新之后去接口访问出现了502的错误; 一开始以为是nginx配置出错了,但一想没有改动里面的配置; 然后敲了一下pm2 list命令,看看启动的情况,发现在status那一栏是errored; pm2 logs www日志 Nginx error.log pm2 show www 求解,万谢