2016-10-25 11 views
2

私はイメージが命令はコンテナがアプリケーションとJBossのサーバーを実行している8080を公開していDockerfileを使用して構築されてホスト上のポートにアクセスすることはできませんが

sudo docker run -it -P -d plcdimage 

コマンドを使用してドッキングウィンドウコンテナを開始しているコンテナ港をドッキングウィンドウにマップそれに展開されます。ポートマッピングは、以下のとおりです。

Command: sudo docker port be1837e849dc 

Output: 8080/tcp -> 0.0.0.0:32771 

私は、URLを使用してマッピングされたホストポートからコンテナ内のJBoss上で稼働するWebアプリケーションにアクセスしようとすると:

http://IPAddressOfHost:32771/

私は、接続がエラーを拒否し得ます。 「netstatコマンド-tulpn」コマンドの結果である

(Not all processes could be identified, non-owned process info 
will not be shown, you would have to be root to see it all.) 
Active Internet connections (only servers) 
Proto Recv-Q Send-Q Local Address   Foreign Address   State  PID/Program name 
tcp  0  0 0.0.0.0:22    0.0.0.0:*    LISTEN  -    
tcp6  0  0 :::9999     :::*     LISTEN  -    
tcp6  0  0 :::22     :::*     LISTEN  -    
tcp6  0  0 :::32771    :::*     LISTEN  -    
udp  0  0 0.0.0.0:68    0.0.0.0:*       -   

以下の私は、telnet次のhostIP 32771をやってみました、それはまた、接続拒否になります。

これにはどのような原因が考えられますか?私はコンテナ内で実行しているJBossサーバが0.0.0.0に聞いていなかったことがわかっ事前

+2

最初のものですホストから 'http:// [container-ip]:8080'へのブラウズ –

+1

' sudo docker ps'の結果は何ですか? – Rao

答えて

1

感謝。これを行う1つのオプションは、スタンドアロンサーバーを起動するときに-b 0.0.0.0を使用することです。

/bin/standalone.sh 0.0.0.0 -b

あなたのコンテナが実際にポート8080でリッスンしているあなたはドッキングウィンドウのinspect` `を使用して、コンテナのIPアドレスを取得し、試すことができますかどうかを確認するために
関連する問題