Reactjs 如何使用docker和serve-s构建部署React应用程序
到目前为止,我已经构建了映像并将其部署到AWS EC2。但是我想用Reactjs 如何使用docker和serve-s构建部署React应用程序,reactjs,docker,deployment,Reactjs,Docker,Deployment,到目前为止,我已经构建了映像并将其部署到AWS EC2。但是我想用 serve -s build 以生产模式为应用程序提供服务。 我在当地做的,显然一切都很好我明白了 ┌──────────────────────────────────────────────────┐ │ │ │ 服务│ │
serve -s build
以生产模式为应用程序提供服务。
我在当地做的,显然一切都很好我明白了
┌──────────────────────────────────────────────────┐
│ │
│ 服务│
│ │
│ - 本地:http://localhost:5000 │
│ - 在您的网络上:│
│ │
│ 已将本地地址复制到剪贴板!│
│ │
└──────────────────────────────────────────────────┘
页面进入..但是当我尝试向api发出请求时,我得到404
我想知道react build是如何工作的,以及我需要做什么才能将其置于生产模式。还有,dist文件夹的用途是什么
这是我的Dockerfile:
FROM node
#Create app directory
WORKDIR /app
# A wildcard is used to ensure both package.json AND package-lock.json are copied
# where available (npm@5+)
COPY package*.json ./
#Install dependencies
RUN npm install
RUN npm install react-scripts@3.4.1 -g --silent
#Copy app's source code inside the Docker image
COPY . .
#Expose the app's port
EXPOSE 3000
#Run the app when the container is ran
CMD ["npm", "start""]
谢谢 这是我使用
service-s build运行Dockerfile时使用的Dockerfile
# pull official base image
FROM node:13.12.0-alpine
# set working directory
WORKDIR /app
# Copies package.json and package-lock.json to Docker environment
COPY package*.json ./
# Installs all node packages
RUN npm install
# Copies everything over to Docker environment
COPY . .
# Build for production.
RUN npm run build --production
# Install `serve` to run the application.
RUN npm install -g serve
# Uses port which is used by the actual application
EXPOSE 5000
# Run application
#CMD [ "npm", "start" ]
CMD serve -s build
我只是在npm启动(调试)和服务(生产)之间切换