コンテナ内に/ rest/getMailにバインドされたJSON文字列を返すREST APIがあります。Docker:can not open port 8080
curl localhost:8080/rest/getMail
を問題なく使用して、このAPIをコンテナ内で呼び出すことができます。
しかし、すでにポートを公開して外部ポートへのバインド(docker run -d -i -p 2500:8080 myimage
またはdocker run -d -i --expose 8080 -p 2500:8080 myimage
)を行っても、このAPIを外部から呼び出すことはできません。それは示す:接続が拒否されました。問題になることが何curl 172.17.0.2:8080/rest/getMail
:
私も同様にIPアドレスを使用して、APIを呼び出すことはできませんか?本当に変だ。 ありがとうございます。
編集:
私はcurl localhost:2500
を行うと、それは示しています
curl: (56) Recv failure: Connection reset by peer
そしてtelnet localhost:2500
:
Trying ::1...
Connected to localhost.
Escape character is '^]'.
Connection closed by foreign host.
curl localhost:2500/rest/getMail
は私に同じ結果を与えました。
はい、私は2番目の(curl localhost:2500/rest/getMail)はまったく動作しませんでした。 – brest1007
ええと、あなたはそれがうまくいかないということを説明してください。いくつかの情報が非常に役立つだろう! :)また、 'telnet localhost 2500'を試して出力を投稿できますか? – gsaslis
okありがとうございます、あなたは正しいと思いますが、ポートは実際に開いていますが、私はAPIにアクセスできません。しかし、私がコンテナの中から呼び出すと、それはうまく機能します。 – brest1007