reactjs - 使用 Docker 时如何隐藏 React 启动欢迎消息
问题描述
在构建并启动一个 react 应用程序后,我们通常会收到一条欢迎消息,说我们可以在特定的 url 访问 react。
有没有办法禁用它?我用 docker-compose 设置了一个反应应用程序,这个欢迎消息清除了屏幕和来自其他服务的许多重要日志。
{
"name": "ui",
"version": "0.1.0",
"private": true,
"dependencies": {
"@testing-library/jest-dom": "^4.2.4",
"@testing-library/react": "^9.3.2",
"@testing-library/user-event": "^7.1.2",
"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": {
"extends": "react-app"
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
}
}
编辑:似乎很多人都在尝试解决同样的问题: https ://github.com/facebook/create-react-app/issues/2495
一个解决方法会很好,因为 Facebook 甚至没有尝试解决问题,因为他们已经关闭了票。
解决方案
如果您在 Docker 设置中避免使用更多面向开发人员的工具,那么您将不会收到更多面向开发人员的消息。对于基于浏览器的应用程序,您可以将其编译成静态文件,然后使用您选择的 Web 服务器来提供它。
FROM node:12 AS build
WORKDIR /app
...
RUN yarn build
FROM nginx:1.17
COPY --from=build /app/dist /usr/share/nginx/html
# Use base image's default EXPOSE, CMD, etc.
这不支持实时重新加载,但无论如何 Docker 都存在许多突出的问题,您可以yarn start
在针对 Docker 后端的主机上运行。 将"proxy"
设置添加到package.json
指向 Docker 托管后端的文件;然后yarn start
将在那里代理 API 请求以进行本地开发,但yarn build
不会用于基于 Docker 的部署。
推荐阅读
- javascript - 如何使用jquery检索xml子节点
- javascript - slice 方法返回一个引用
- php - ORM HasLifecycleCallbacks 不适用于抽象父类
- javascript - 比较 JavaScript 中的两个对象
- react-native - 如何在本机反应中检查一个点是否位于折线上
- twitter-bootstrap - 如何在引导管理员上设置侧边栏菜单?
- c++11 - SIGINT 未在此范围内声明
- android - 当我在 android 应用程序的另一个活动中时,Openfire 丢失消息
- vba - 在单元格中搜索特定字符串并在 excel vba 中返回的函数
- java - 使用来自不同类层次结构路由的两个字段进行映射过滤器 lambda 表达式