Как отлаживать удаленное Java-приложение через обратный прокси-сервер nginx

Мне нужно отлаживать удаленное Java-приложение, работающее за обратным прокси-сервером nginx. Я получаю следующую ошибку:

Не удалось подключиться к удаленной отлаживаемой виртуальной машине. Причина: java.io.IOException: получено недопустимое рукопожатие

Какой должна быть правильная конфигурация nginx для достижения этой цели?

Я успешно подключил java-отладчик vscode к удаленному java-приложению, нацелившись напрямую на хост приложения.

Резолвер — 127.0.0.11, потому что я использую образ докера nginx.

Мой файл конфигурации nginx app.xyz.com.conf в conf.d:

server {
    listen 1043;
    resolver 127.0.0.11 valid=30s;
    server_name app.xyz.com;
    include /etc/nginx/mime.types;
    location / {
        proxy_buffer_size 8k;
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Forwarded-Server $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
        proxy_set_header X-Real-IP $remote_addr;
        set $upstream "http://java-app:1043";
        proxy_pass $upstream;
        client_max_body_size 10M;
    }
}

Заранее спасибо!


person Moises Nessim    schedule 31.07.2019    source источник


Ответы (1)


Вы должны объявить порт tcp вместо http для отладки java-приложения.

person burtsevyg    schedule 26.05.2020