Я развернул приложение в Azure Kubernetes. Я пытался получить доступ к приложению через контроллер Ingress Nginx. Ingress указывает на xxx.xxx.com, и приложение развертывается по пути «/ реагировать». Поэтому, когда я получил доступ к приложению, я смог увидеть заголовок, но я вижу следующее: консоль GET https://dns/static/css/main.c0f79ebd.css net :: ERR_ABORTED 404. Мне удалось получить доступ к файлам CSS, когда я доступ к нему через https://dns/react/static/css/main.c0f79ebd.css. Итак, как я могу добавить / отреагировать на путь к сгенерированным файлам?
Ниже приводится содержимое файла dockerfile
# build environment
FROM node:12.2.0-alpine as build
WORKDIR /app
ENV PATH /app/node_modules/.bin:$PATH
COPY package.json /app/package.json
RUN npm install --silent
RUN npm install react-scripts@3.0.1 -g --silent
COPY . /app
RUN npm run build
# production environment
FROM nginx:1.16.0-alpine
COPY --from=build /app/build /usr/share/nginx/html
RUN rm /etc/nginx/conf.d/default.conf
COPY nginx/nginx.conf /etc/nginx/conf.d
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
Ingress Deployment
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: ingress
namespace: sample-ns
annotations:
kubernetes.io/ingress.class: nginx
nginx.ingress.kubernetes.io/force-ssl-redirect: "true"
nginx.ingress.kubernetes.io/rewrite-target: /$2
spec:
tls:
- hosts:
- dns
secretName: tls
rules:
- http:
paths:
- backend:
serviceName: my-react-app
servicePort: 80
path: /react(/|$)(.*)