Rumah  >  Soal Jawab  >  teks badan

Aplikasi VueJS tidak memuatkan fail js dalam kubernetes

Saya mempunyai aplikasi VueJS yang berjalan dalam imej Docker dalam kubernetes. Setelah berbilang replika/pod wujud, pelanggan tidak dapat memuatkan aplikasi - banyak (tetapi tidak semua) panggilan untuk memuatkan fail mengembalikan 404.

Saya rasa ini kerana mereka dihantar ke Pod yang berbeza daripada Pod yang pada asalnya melayani permintaan itu.

Bagaimana untuk menyelesaikan masalah ini?

Ini adalah persediaan saya:

Berikut ialah contoh panggilan yang mengembalikan 404: Dapatkan https://myapp.mydomain.com/js/chunk-d18c0136.7a3f0664.js

Ini adalah spesifikasi perkhidmatan saya:

apiVersion: v1
kind: Service
metadata:
  name: ${CI_PROJECT_NAME}-${CI_BUILD_REF_SLUG_SHORT}
  labels:
    app: ${CI_ENVIRONMENT_SLUG}
spec:
  ports:
    - port: 80
      targetPort: 8080
      protocol: TCP
      name: ${CI_PROJECT_NAME}-${CI_BUILD_REF_SLUG}
  selector:
    app: ${CI_ENVIRONMENT_SLUG}

Ini adalah spesifikasi kemasukan nginx saya:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: ${CI_PROJECT_NAME}-${CI_BUILD_REF_SLUG_SHORT}
  labels:
    app: ${CI_ENVIRONMENT_SLUG}
  annotations:
    kubernetes.io/ingress.class: "nginx"
    nginx.ingress.kubernetes.io/affinity: "cookie"
    nginx.ingress.kubernetes.io/proxy-connect-timeout: "30"
    nginx.ingress.kubernetes.io/proxy-send-timeout: "3600"
    nginx.ingress.kubernetes.io/proxy-read-timeout: "3600"
spec:
  defaultBackend:
    service:
      name: ${CI_PROJECT_NAME}-${CI_BUILD_REF_SLUG_SHORT}
      port:
        number: 80
  rules:
    - host: ${CI_APPLICATION_HOST}
      http:
        paths:
          - path: /
            pathType: Prefix
            backend:
              service:
                name: ${CI_PROJECT_NAME}-${CI_BUILD_REF_SLUG_SHORT}
                port:
                  number: 80

Sebagai penyelesaian, kami mengkonfigurasi tembok api untuk berkomunikasi secara langsung dengan hanya satu Pod, atau hanya menjalankan satu replika.

Menetapkan "kuki" melekit sesi pada kemasukan nginx tidak berfungsi.

P粉936509635P粉936509635174 hari yang lalu400

membalas semua(1)saya akan balas

  • P粉403549616

    P粉4035496162024-03-30 09:31:57

    Maaf, ini adalah herring merah lengkap.

    Akhirnya, masalahnya ialah kesilapan menaip dalam penghalaan proksi luaran - hanya dua daripada enam nod telah dikonfigurasikan dengan betul dan boleh diakses. Itulah sebabnya "kebanyakan" permintaan mengembalikan 404 - Node Tidak Ditemui.

    balas
    0
  • Batalbalas