web-dev-qa-db-ja.com

失敗:ポートは既に割り当てられています

MacOS Sierra 10.12.2でOracle 11g Expressを実行するためにDockerを使用します

https://github.com/wnameless/docker-Oracle-xe-11g

これは私のエラーです:

Last login: Sat Jan  7 22:42:11 on ttys000
➜  ~ docker run -d -p 49160:22 -p 49161:1521 wnameless/Oracle-xe-11g
docker: Cannot connect to the Docker daemon. Is the docker daemon running on this host?.
See 'docker run --help'.
➜  ~ docker run -d -p 49160:22 -p 49161:1521 wnameless/Oracle-xe-11g
043d8caecbb45d6e2e5999b69a2f760c20d53ff3aa2fad78cb1eb70acb058a1f
docker: Error response from daemon: driver failed programming external connectivity on endpoint serene_lalande (08bb0bd9684c0f92db7b736986bf894d3a57a714324405823496d13e175e7491): Error starting userland proxy: Bind for 0.0.0.0:49161 failed: port is already allocated.
➜  ~ 

診断:

➜  ~ netstat -anp tcp | grep 49161                                  
tcp4       0      0  192.168.1.2.49161      17.188.166.13.5223     ESTABLISHED
➜  ~

➜  ~ docker --version
Docker version 1.12.5, build 7392c3b

My Dianostic ID:20EB9506-CC72-4093-8A15-60E05A841ED1

理由はわかりません。その数週間前に、それは成功します。ほぼ変更し、新しいDHCP IPをリリースします。 Dockerインスタンスを実行する方法はOracle 11gで成功を収めていますか?

10
Do Nhu Vy

2回起動することはできません

docker run -d -p 49160:22

これは、ホストのポート49160を2回割り当てることを意味するため、もちろん2回目は、エラーメッセージが表示され、2回目の実行を試行します

docker run -d -p 49161:22

9
user2915097

49161の代わりに別のポートを使用する必要があります。49152未満のポートを試してください。

コンピューターのポート49161とリモートのポート5223の間に既存の接続がありますApple=。したがって、そのポートは、その接続が終了するまで他の用途には使用できません。ポート5223はAppleのプッシュ通知に使用されます。私の知る限り、お使いのコンピューターは偶然ポート49161を使用して今回Appleのサーバーに接続していました。その後使用されませんでした。

リモートサーバーに接続するたびに、自分のコンピューターがその接続にランダムなポート番号を割り当てます。今回は、Appleのプッシュ通知サービスに接続したときに、コンピューターが49161を割り当てました。次回は、まったく異なる数になる可能性があります。 https://en.wikipedia.org/wiki/Ephemeral_port を参照してください

0
Halprin