У меня есть Java-приложение, работающее на удаленном кластере openshift, и я хочу отладить приложение с моего локального компьютера с помощью Intellij-Idea.Приложение создается Jenkinsfile на другом удаленном сервере jenkins (сборка gradle, сборка docker и отправляется в openshift, где оно автоматически развертывается).
Dockerfile предоставляет порт 9009, и поэтому моя конфигурация удаленной отладки Intellij выглядит следующим образом: Конфигурация отладки
С локальным хостом в конфигурации отладки мне нужна переадресация портов openshift:
oc port-forward my-pod 9009
Forwarding from 127.0.0.1:9009 -> 9009
Когда я запускаю отладчик, в Intellij я получаю следующую ошибку:
Error running 'DTC Remote Debug':
Unable to open debugger port (localhost:9009): java.net.ConnectException "Connection refused: connect"
В то же время терминал с переадресацией портов показывает:
Handling connection for 9009
E0927 09:52:33.711817 5996 portforward.go:331] an error occurred forwarding 9009 -> 9009: error forwarding port 9009 to pod ad370...c010, uid : exit status 1: 2019/09/27 03:52:33 socat[129691] E connect(5, AF=2 127.0.0.1:9009, 16): Connection refused
Выполняя Nmap-сканирование по URL-адресу, где я получаю index.html моего приложения, я получил следующее:
nmap -sS my-openshift-url
Starting Nmap 7.80 ( https://nmap.org ) at 2019-09-27 15:01 Mitteleuropõische Sommerzeit
Nmap scan report for my-openshift-url (IP-Address)
Host is up (0.0043s latency).
rDNS record for IP-Address: dispatch-my-domain
Not shown: 997 filtered ports
PORT STATE SERVICE
80/tcp open http
443/tcp open https
9009/tcp closed pichat
Nmap done: 1 IP address (1 host up) scanned in 6.10 seconds
Я думаю, проблема в том, что закрыт порт 9009, но я понятия не имею, как ямогу открыть этот порт на моем кластере openshift.Я уже установил несколько переменных окружения в веб-интерфейсе openshift (просто чтобы убедиться):
DEBUG TRUE
DEBUG true
DEBUGGING TRUE
DEBUGGING true
JAVA_DEBUG TRUE
JAVA_DEBUG true
JAVA_DEBUG_PORT 9009
Но я не могу заставить его работать.Если я переключу переадресацию портов на 8080, я смогу получить доступ к index.html через localhost: 8080 из моего браузера.Я не знаю, нужно ли мне что-то изменить в коде проекта (gradle, docker, jenkins и т. Д.) Или я могу просто как-то открыть порт развернутой службы в openshift ...
Есличто-то не понятно, или если я что-то пропустил, просто скажите мне.Я рад за каждый совет.
С уважением,
Кристоф