Dockerプロジェクトでdocker-compose up
を実行すると、次のメッセージが表示されて失敗します。
Error starting userland proxy: listen tcp 0.0.0.0:3000: bind: address already in use
netstat -pna | grep 3000
はこれを示しています。
tcp 0 0 0.0.0.0:3000 0.0.0.0:* LISTEN -
すでにdocker-compose down
を試しましたが、役に立ちません。
あなたの場合、ポートを使用している他のプロセスであり、コメントに示されているように、Sudo netstat -pna | grep 3000
は問題の解決に役立ちました。
他の場合(私自身も何度も遭遇しました)は、ほとんどが他のインスタンスで実行されている同じコンテナです。その場合、docker ps
は非常に役に立ちました。多くの場合、同じコンテナを他のディレクトリで実行したままにして、同じコンテナ名が使用されている他の場所で再度実行しようとしました。
docker ps
が私を助けた方法:docker rm -f $(docker ps -aq)
は、すべてのコンテナを削除するために使用する短いコマンドです。
編集:docker ps
がどのように役立つかを追加しました。
これは私を助けました:
docker-compose down
docker rm -fv $(docker ps -aq)
Sudo lsof -i -P -n | grep <port number>
そして、kill -9 <process id>
(macOS)またはSudo kill <process id>
(Linux)。
出典: ユーザーRub21によるコメント 。
同じ問題がありました。ホストでApache2サービスを停止することでこれを修正しました。
私は同じ問題を抱えていた、docker-compose down --rmi all
(docker-compose upを実行したディレクトリと同じディレクトリ内)
ヘルプ
私の場合は
ユーザーランドプロキシの起動エラー:リッスンtcp 0.0.0.0:9000:バインド:アドレスは既に使用されています
そして、私が必要なのは、PHPストームでデバッグリスニングをオフにすることです
同じ問題に何度か遭遇しました。 Dockerを再起動するとうまくいくようです