对于具有 .env 的React应用:
REACT_APP_ENV_VAR_1=A
REACT_APP_ENV_VAR_2=B
通过 docker-compose.yml 自定义环境变量不会更改其默认值:
services:
front:
image: "react-app-image"
environment:
- REACT_APP_ENV_VAR_2=C
.env 变量可以在react应用中使用:
let env_var_2 = process.env.REACT_APP_ENV_VAR_2;
是否有一种方法可以直接从react应用访问docker-commit ENV或使用docker ENV映射.env条目?
前端 Dockerfile 用于构建React应用程序映像
FROM node:13.12.0-alpine as build
WORKDIR /app
ENV PATH /app/node_modules/.bin:$PATH
COPY package.json ./
COPY package-lock.json ./
RUN npm ci --silent
RUN npm install react-scripts@3.4.1 -g --silent
COPY . ./
RUN npm run build
FROM nginx:stable-alpine
COPY --from=build /app/build /usr/share/nginx/html
COPY nginx/nginx.conf /etc/nginx/conf.d/default.conf
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]