我安装了名为create-react-app的模块,然后执行此 create-react-app前端命令以生成项目。它是一个自定义图像。在生成项目后,我制作了用于自定义图像生成的自定义docker YAML文件。图像已成功生成。但是,使用此命令 docker run b99c49b119be 运行该映像时,在说启动开发服务器后立即退出。有关错误,请参见下文。
我运行了用于自定义映像生成的命令 docker build -f Dockerfile.dev。
错误
Successfully built b99c49b119be
[root@client frontend]# docker run b99c49b119be
> frontend@0.1.0 start /app
> react-scripts start
ℹ 「wds」: Project is running at http://172.17.0.2/
ℹ 「wds」: webpack output is served from
ℹ 「wds」: Content not from webpack is served from /app/public
ℹ 「wds」: 404s will fallback to /
Starting the development server...
Dockerfile
FROM node:alpine
WORKDIR '/app'
COPY package.json .
RUN npm install
COPY . .
CMD ["npm", "run", "start"]
答案 0 :(得分:0)
出于开发目的,只需使用npm start
即可,它使用react-scripts运行并监视您的应用程序的更改。
要使用Docker部署应用程序,您可以使用静态文件服务器(例如docker中的serve)。在下面使用dockerfile。
FROM node:8-alpine
RUN npm install serve -g
COPY build/ .
EXPOSE 5000
CMD ["serve", "-s", "."]
在构建映像之前,运行npm run build
以生成可用于生产的发行版-该发行版是项目build
文件夹中所有文件的集合
有关如何部署使用create-react-app
create-react-app docs创建的react应用的更多详细信息
答案 1 :(得分:0)
您需要添加-it标志以交互方式运行容器(保持STDIN打开并分配伪tty):
docker run -it CONTAINER_ID
这是由于Create React App库中的最新更新引起的,添加此标志应该可以解决您的问题。