Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker 如果我使用create react应用程序,是否需要react脚本_Docker_Create React App_Nodemon - Fatal编程技术网

Docker 如果我使用create react应用程序,是否需要react脚本

Docker 如果我使用create react应用程序,是否需要react脚本,docker,create-react-app,nodemon,Docker,Create React App,Nodemon,我想在docker中运行我的create react应用程序。我创建react应用程序。编写Dockerfile: FROM node:10.13.0 RUN mkdir /frontend WORKDIR /frontend RUN npm install -g nodemon EXPOSE 9000 # CMD npm start - (1) # CMD nodemon start - (2) # CMD nodemon ./src/index.js - (3) version:

我想在docker中运行我的create react应用程序。我创建react应用程序。编写
Dockerfile

FROM node:10.13.0

RUN mkdir /frontend

WORKDIR /frontend

RUN npm install -g nodemon

EXPOSE 9000

# CMD npm start - (1)
# CMD nodemon start - (2)
# CMD nodemon ./src/index.js - (3)
version: '2'
services:
  frontend-dev:
    build:
      context: ./frontend
      dockerfile: Dockerfile.dev
    volumes:
      - ./frontend:/frontend
    ports:
      - "9000:9000"
我不安装node_模块,也不将所有文件复制到映像中,因为我将对卷执行此操作。然后我创建一个
dockerfile

FROM node:10.13.0

RUN mkdir /frontend

WORKDIR /frontend

RUN npm install -g nodemon

EXPOSE 9000

# CMD npm start - (1)
# CMD nodemon start - (2)
# CMD nodemon ./src/index.js - (3)
version: '2'
services:
  frontend-dev:
    build:
      context: ./frontend
      dockerfile: Dockerfile.dev
    volumes:
      - ./frontend:/frontend
    ports:
      - "9000:9000"
嗯。现在,我在Dockerfile.dev中取消注释(1)(现在最后3行已注释)并运行

并且出现错误“未找到反应脚本”。好啊这是因为我没有运行
npm安装
。我想在容器内执行npm安装。但是在这个错误之后,我的容器停止了,我无法执行这个命令。好啊我从一位男士那里听说,我可以使用
nodemon
启动我的应用程序,如果出现错误,我的容器将不会停止

嗯。让我们评论(1)和取消注释(2)。比跑

docker-compose -f dockerfile.dev.yml down
docker-compose -f dockerfile.dev.yml build
docker-compose -f dockerfile.dev.yml up
和。。同样的问题。。。容器已停止。好啊我认为这是因为默认情况下,
script
会启动
react脚本。这可能是失败的原因吗?运行注释(2)和取消注释(3)`

是工作吗?。。不集装箱还没有停下来。所以,我可以跑了

docker-compose -f docker-compose.dev.yml exec frontend-dev npm install
docker-compose -f docker-compose.dev.yml restart frontend-dev
但它不起作用,因为我还有一个错误:

frontend-dev_1  | /frontend/src/index.js:1
frontend-dev_1  | (function (exports, require, module, __filename, __dirname) { import React from 'react';
frontend-dev_1  |                                                                          ^^^^^
frontend-dev_1  | 
frontend-dev_1  | SyntaxError: Unexpected identifier
frontend-dev_1  |     at new Script (vm.js:79:7)
frontend-dev_1  |     at createScript (vm.js:251:10)
frontend-dev_1  |     at Object.runInThisContext (vm.js:303:10)
frontend-dev_1  |     at Module._compile     (internal/modules/cjs/loader.js:656:28)
frontend-dev_1  |     at Object.Module._extensions..js (internal/modules/cjs/loader.js:699:10)
frontend-dev_1  |     at Module.load (internal/modules/cjs/loader.js:598:32)
frontend-dev_1  |     at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
frontend-dev_1  |     at Function.Module._load (internal/modules/cjs/loader.js:529:3)
frontend-dev_1  |     at Function.Module.runMain (internal/modules/cjs/loader.js:741:12)
frontend-dev_1  |     at startup (internal/bootstrap/node.js:285:19)
frontend-dev_1  | [nodemon] app crashed - waiting for file changes before starting...
我不知道我在做什么,我不知道我需要什么。。我需要这个“反应脚本”吗?他们在做什么?
react脚本
真的很重要吗?如何使用docker运行我的应用程序?也许(2)这个方法是对的,我只需要修好其他的小东西?。。请帮帮我