Docker 容器获取下一个:未从 docker-compose 容器中找到

问题描述 投票:0回答:1

我的 docker-compose 配置文件有问题。我的目标是使用 docker-compose 文件运行 Next.js 应用程序。

这是我当前的 DockerFile

FROM node:18
WORKDIR /app
COPY package.json yarn.lock ./
RUN yarn install
COPY . .
EXPOSE 3000
CMD ["yarn", "dev"]

这是我的 Docker Compose

version: '3'

services:
  backend-flask:
    build: ./backend   
    ports:
      - "8000:5000"
    volumes:
      - ./backend:/code  

  frontend-fligh:
    build: ./frontend-fligh
    ports:
      - "3000:3000"
    volumes:
      - ./frontend-fligh:/app

以及我的 package.json 和下一个依赖项

{
  "name": "fligh-next",
  "version": "1.2.0",
  "private": true,
  "scripts": {
    "dev": "next dev",
    "build": "next build",
    "start": "next start",
    "lint": "next lint"
  },
  "dependencies": {
    "@faker-js/faker": "^7.6.0",
    "@popperjs/core": "^2.11.6",
    "@reduxjs/toolkit": "^1.9.1",
    "aos": "^2.3.4",
    "bootstrap": "^5.2.3",
    "chart.js": "^4.2.1",
    "eslint": "8.35.0",
    "eslint-config-next": "13.2.3",
    "google-map-react": "^2.2.0",
    "next": "13.2.3",
    "photoswipe": "^5.3.5",
    "react": "18.2.0",
    "react-chartjs-2": "^5.2.0",
    "react-dom": "18.2.0",
    "react-input-range": "^1.3.0",
    "react-modal-video": "^2.0.0",
    "react-multi-date-picker": "^3.3.4",
    "react-parallax": "^3.5.1",
    "react-photoswipe-gallery": "^2.2.6",
    "react-pro-sidebar": "^1.0.0",
    "react-redux": "^8.0.5",
    "react-slick": "^0.29.0",
    "react-tabs": "^6.0.0",
    "sass": "^1.57.1",
    "slick-carousel": "^1.8.1",
    "swiper": "^8.4.7"
  }
}

这是我收到的错误消息

fligh-frontend-fligh-1  | yarn run v1.22.19
fligh-frontend-fligh-1  | $ next dev
fligh-frontend-fligh-1  | /bin/sh: 1: next: not found
fligh-frontend-fligh-1  | error Command failed with exit code 127.

要添加我的上下文,有一个内容相同的工作本地目录,其中包含使用本地yarn安装命令安装的节点模块,但是当我从github上拉取并使用dockerfile运行yarn install时,没有初始node_module文件,会发生此错误

[更新]通过删除卷解决了问题,但现在热重载不起作用,有什么解决方法吗?

docker next.js docker-compose dockerfile
1个回答
0
投票

尝试添加: 卷: - /应用程序/node_modules

© www.soinside.com 2019 - 2024. All rights reserved.