172 похожих чатов

Всем утречко) Подскажите. Есть бэк на Node.js и есть фронт на

Vue.js . Фронт коннектится по wss к бэку.
В плане инфраструктуры - в докере запущен бэк, фронт и nginx, который является входной точкой и реверс прокси для бэка и фронта.
Всё это работает, но периодически (хотя и редко) после обновления/перезапуска контейнера с бэком, nginx кидает 502 и реджектит wss от фронта. В чём может быть дело?
Конфиги прикладываю ниже

Первый конфиг:
upstream some-web {
server container_ip:80;
}

server {
listen 0.0.0.0:80;
server_name some.example.com;

return 301 https://$host$request_uri;
}

server {
listen 0.0.0.0:443 ssl http2;
server_name some.example.com;

proxy_read_timeout 86400s;
proxy_send_timeout 86400s;

ssl_certificate /etc/letsencrypt/live/some.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/some.example.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/some.example.com/fullchain.pem;

location / {
proxy_pass http://some-web;
}
}

Второй конфиг:
upstream some-websocket {
server container_ip:20000;
}

map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}

server {
listen 0.0.0.0:80;
server_name server.some.example.com;

return 301 https://$host$request_uri;
}

server {
listen 0.0.0.0:443 ssl;
server_name server.some.example.com;

ssl_certificate /etc/letsencrypt/live/some.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/some.example.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/some.example.com/fullchain.pem;

location / {
proxy_pass http://some-websocket;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}

1 ответов

11 просмотров

может быть засада, что контейнер пересоздался с другим айпи

Похожие вопросы

Обсуждают сегодня

Какой-то там пердун в 90-х решил, что есть какая-то разная типизация. Кого вообще это волнует?
КТ315
49
void terminal_scroll() { memmove(terminal_buffer, terminal_buffer + VGA_WIDTH, buffer_size - VGA_WIDTH); memset(terminal_buffer + buffer_size - VGA_WIDTH, 0, VGA_WIDTH); ...
Егор
47
Всем привет! Подскажите, пожалуйста, в чем ошибка? Настраиваю подключение к MySQL. Либы лежат рядом с exe. Все как по "учебнику"
Евгений
16
А можете как-то проверить меня по знаниям по ассемблеру?
A A
132
Здравствуйте! У меня появилась возможность купить книгу "Изучай Haskell во имя добра!". Но я где-то слышал, что эта книга устарела. Насколько это правда??
E
22
Здравствуйте! Я вот на stepic решаю задачи на хаскеле https://stepik.org/lesson/8443/step/8?unit=1578 мой код import Data.List (isInfixOf) removing :: String -> [String] ->...
E
10
Камрады, кто тесно работал с vtv, хотел уточнить. Ширина column задаётся жёстко на этапе создания дерева или можно в рантайме ее менять программно (не мышкой)?
Ed Doc
10
да ладно ... что там неочевидного ? глянуть в исх-ки датасета и/или кверика чтобы понять в каком месте и как выполняется обращения к св-вам blablaSQL - минутное дело, даже е...
Сергей
7
Здесь для arm кто-нибудь кодит ?
Nothing
52
Всем привет, у меня есть сервер принимающий входящие HTTP подключения, как проверить, что подключение было через прокси или нет, есть какие то поля в заголовках по которым мо...
DS
8
Карта сайта