我的项目是基于创建-反应-应用程序。NPM启动或yarn启动默认将在端口3000上运行应用程序,在package.json中没有指定端口的选项。
在这种情况下,如何指定自己选择的端口?我想同时运行这个项目的两个(用于测试),一个在端口3005,另一个是3006
我的项目是基于创建-反应-应用程序。NPM启动或yarn启动默认将在端口3000上运行应用程序,在package.json中没有指定端口的选项。
在这种情况下,如何指定自己选择的端口?我想同时运行这个项目的两个(用于测试),一个在端口3005,另一个是3006
当前回答
如果你已经做了npm run eject,去scripts/start.js并在const DEFAULT_PORT = parseInt(process.env. js)中更改port。端口,10)|| 3000;(在本例中为3000)到您想要的任何端口。
其他回答
方法1
在项目的根目录下创建.env文件
像这样设置
PORT=3005
方法2
在package.json
set PORT=3006 && react-scripts start
您需要更新您的软件包。json来指定不同的PORT
在脚本部分,替换start命令如下:—
确保所提到的PORT可以自由监听
"start": "export PORT=3001;react-scripts开始”
您的应用程序将从http://localhost:3001开始
谢谢
您可以在启动应用程序时找到默认端口配置
yourapp/scripts/start.js
向下滚动并将端口更改为您想要的任何端口
const DEFAULT_PORT = parseInt(process.env.PORT, 10) || 4000;
希望这对你有所帮助;)
对于我的windows朋友们,我发现了一种改变ReactJS端口的方法,可以在任何你想要的端口上运行。在运行服务器之前,请转到
node_modules/react-scripts/scripts/start.js
在其中,搜索下面的行并将端口号更改为所需的端口
var DEFAULT_PORT = process.env.PORT || *4000*;
这样就可以开始了。
如果你在Dockerfile中运行npm start,你不能在docker运行中映射端口,比如做一些类似-p 3001:3000的事情,这是有效的:
FROM node
ENV PORT=3001
# whatever here, COPY .. etc.
CMD npm start
或者你可以在docker build中传递端口号作为参数:
FROM node
ARG PORT=${PORT}
ENV PORT=${PORT}
# whatever here, COPY .. etc.
CMD npm start
在docker build中使用——build-arg
docker build --build-arg PORT=3001 .