Nginx не удалось открыть /etc/nginx/html/sockjs-node — нет такой ошибки файла или каталога

Я пытаюсь докеризовать три приложения, два внешних приложения, использующие реакцию, и одно внутреннее приложение nodejs, два внешних приложения используют один и тот же сервер с разными портами.

Фронтенд (https://localhost/login) и бэкенд (https://localhost:8443/api-portal и https://localhost:8443/api-adminportal) работают отлично.

Проблема в том, что когда я пытаюсь получить доступ к другому переднему приложению (https://localhost:8443/adminportal/), я получаю эту ошибку в журнале nginx:

172.19.0.1 - - [24/May/2022:13:25:42 +0000] "GET /sockjs-node HTTP/1.1" 404 555 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.67 Safari/537.36" "-"

2022/05/24 13:25:42 [error] 31#31: *15 open() "/etc/nginx/html/sockjs-node" failed (2: No such file or directory), client: 172.19.0.1, server: localhost, request: "GET /sockjs-node HTTP/1.1", host: "localhost:8443"

И в браузере Firefox я получаю эту ошибку:

Firefox can’t establish a connection to the server at wss://localhost:8443/sockjs-node.

Файл Nginx conf.d:

server {
    listen 80;
    server_name localhost 127.0.0.1 0.0.0.0;
    return 301 https://$server_name$request_uri;
}
    
server {
    listen 443 ssl;
    server_name localhost 127.0.0.1 0.0.0.0;

    ssl_certificate /etc/nginx/cert/cert.pem;
    ssl_certificate_key /etc/nginx/cert/key.pem;

    location / {
        proxy_pass http://fpr-frontend:3000/;
    }


    # include /etc/nginx/conf.d/koma/*.conf;

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
}

server {
    listen 8443 ssl;
    server_name localhost 127.0.0.1 0.0.0.0;

    ssl_certificate /etc/nginx/cert/cert.pem;
    ssl_certificate_key /etc/nginx/cert/key.pem;

     location /adminportal/ {
        proxy_pass http://fpr-adminportal:3001/adminportal/;
    }

    location /api-adminportal/ {
        proxy_pass https://fpr-backend:3335/;
    }

    location /api-portal/ {
        proxy_pass https://fpr-backend:3333/;
    }

    # include /etc/nginx/conf.d/koma/*.conf;

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;   
    }

}



файл docker-compose.yml:

version: "3.2"

volumes:
  mongodata:

services:
  fpr-backend:
    build:
      context: .
      dockerfile: Dockerfile.backend
    image: fpr-backend
    env_file: ./config/fpr-backend.env
    environment:
      FRONTEND_URL: https://localhost
      FRONTEND_ADMIN_PORTAL_URL: https://localhost:8443/adminportal/
    
    depends_on:
      - mongo
    expose:
      - "3333"
      - "3335"
    ports:
      - "3333:3333/tcp"
      - "3335:3335/tcp"
    command: ["yarn", "start"]

  fpr-frontend:
    build:
      context: .
      dockerfile: Dockerfile.frontend
      args:
       VITE_BACKEND_URL: https://localhost:8443/api-portal/
    image: fpr-frontend
    env_file: ./config/fpr-frontend.env
    depends_on:
      - fpr-backend
    expose:
      - "3000"
    command: ["yarn", "serve", "--host=fpr-frontend", "--port=3000"]

  fpr-adminportal:

    stdin_open: true # docker run -i
    tty: true        # docker run -t
    build:
      context: .
      dockerfile: Dockerfile.adminportal
      args:
        PORT: 3001
        REACT_APP_API_URL: https://localhost:8443/api-adminportal/
  
    image: fpr-adminportal
    env_file: ./config/fpr-adminportal.env
    environment: 
      - PUBLIC_URL=https://localhost:8443/adminportal
    depends_on:
      - fpr-backend
    expose:
      - "3001"
    ports:
      - "3001:3001/tcp"
    command: ["yarn","dev"]  

  mongo:
    image: mongo
    env_file: ./config/mongo.env
    volumes:
      - mongodata:/etc/mongo


  nginx:
    image: nginx
    depends_on:
      - fpr-backend
      - fpr-frontend
      - fpr-adminportal
    volumes:
      - ./config/nginx/conf.d/:/etc/nginx/conf.d/
      - ./modules/fpr-backend/certificates/UserPortal:/etc/nginx/cert
    expose:
      - "443"
      - "8443"
    ports:
      - "8000:80/tcp"
      - "443:443/tcp"
      - "8443:8443/tcp"

докер nginx

0

Добавить комментарий

Ваш адрес email не будет опубликован.