Есть две отдельные сети. Внутри docker есть отдельная сеть. Снаружи docker на хост-компьютере это другая сеть. Если вы обращаетесь к нему по локальному хосту или IP-адресу, он не будет работать так, как вы ожидаете.
`docker network ls 'покажет вам вывод, подобный приведенному ниже:
NETWORK ID NAME DRIVER SCOPE
58a4dd9893e9 133_default bridge local
424817227b42 bridge bridge local
739297b8107e host host local
b9c4fb3ed4ba none null local
Вам необходимо добавить хост для услуги Java локально. Попробуйте выполнить как приведенную ниже команду:
docker run --add-host javaservice:<ip address of java service> <your image>
Надеюсь, это исправит это.
Еще здесь: https://docs.docker.com/engine/reference/run/#managing -etchosts