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

docker compose命令“npm start”未自动启动react应用程序?

田佐
2023-03-14

我是相当新的反应应用程序。

docker compose命令“npm start”未自动启动react应用程序?

package.json:

"react": "^16.13.1",
    "react-dom": "^16.13.1",
    "react-scripts": "3.4.1"
    },
    "scripts": {
      "start": "react-scripts start",
      "build": "react-scripts build",
      "test": "react-scripts test",
      "eject": "react-scripts eject"
  },
    "eslintConfig": {

docker compose:

.....:

  command: bash -c "npm start && nginx -g 'daemon off;' "

日志输出:

portals_1            | 
portals_1            | > myreact@0.1.0 start /~/~/myreact
portals_1            | > react-scripts start
portals_1            | 
portals_1            | ℹ 「wds」: Project is running at http://172.18.0.9/
portals_1            | ℹ 「wds」: webpack output is served from 
portals_1            | ℹ 「wds」: Content not from webpack is served from /~/~/myreact/public
portals_1            | ℹ 「wds」: 404s will fallback to /
portals_1            | Starting the development server...
portals_1            | 

此时,docker容器运行,但响应服务器不运行。但是如果我撞上Docker集装箱

docker-compose exec portals bash

我检查3000端口仍然是免费的。如果我转到目录并运行npm start,然后反应正常运行,一切都如预期的那样。

日志输出:-您现在可以在浏览器中查看myreact。

Local:            http://localhost:3000
On Your Network:  http://172.18.0.9:3000

Note that the development build is not optimized.
To create a production build, use npm run build.......

为什么react应用程序不能从docker compose正常启动?

共有1个答案

隆睿
2023-03-14

我想问题是当运行npm start时,stdin关闭。

stdinu\u open:true添加到docker compose。yml

将以下内容添加到您的Dockerfile

 ENV CI=true
 类似资料:
  • 我有一个spring启动应用程序,我需要通过进入文件夹目录并通过命令行启动我的web应用程序来启动它。我有一门课叫应用。java及其内部代码如下所示。 我设置了类路径,然后试图运行命令"",但我得到了这个错误消息""

  • 应用服务启动可以在多个地方进行调整,以下介绍两种方案,Dockerfile 和 平台详情页调整 Dockerfile CMD启动方式 看一下简单的例子: FROM hub.kpaas.nsini.com/app/hello:v0.0.3 CMD ["/go/bin/hello"] 启动命令写在CMD这个后面,如果后面有多个参数可以以逗号隔开例如: CMD ["static-web", "-pa

  • 我有一个Spring Boot应用程序,其中有一个Kafka消费者和生产者。还有一个bean来创建主题。 我的Spring Boot应用程序和Kafka都是在Kubernetes的Docker启动的。有时Spring Boot应用程序在Kafka pod启动之前就启动了,因此无法启动,因为用户无法连接(参见stacktrace)。 有没有一种方法可以让我的应用程序以弹性的方式启动?例如,消费者应该

  • 问题内容: 我想知道是否有一种方法可以像使用bash的.bash_profile或.profile脚本那样在进入python shell时自动运行命令。我想自动导入一些模块,这样我每次跳入shell时都不必键入整个shebang。 谢谢, 问题答案: 是的,你可以使用环境变量来做到这一点所概述这里

  • 现在我们谈论一个跟映射一样重要的东西:自动命令。 自动命令可以让Vim自动执行某些指定的命令,这些指定的命令会在某些事件发生的时候执行。我们先看一个例子。 使用:edit foo打开一个新文件,然后立即使用:quit关闭。查看你的硬盘,你会发现这个文件并不存在。这是因为在你第一次保存这个文件之前,Vim实际上并没有真正创建它。 让我们对Vim做一些改变,使得Vim可以在你开始编辑文件的时候就创建它