Engineer's Way

主にソフトウェア関連について色々書くブログです。

Dockerのコンテナが「socat_httpcache」とかで起動しない問題

 

Dockerコンテナの起動でエラー

ある日、Dockerコンテナの調子が悪いのでrestartとかを色々やっていると、
コンテナの起動時に以下のエラーが出て立ち上がらないようになってしまった。

ERROR: for socat_httpcache  driver failed programming external
 connectivity on endpoint test_socat_httpcache_1 
(5d973ed559d63a5561b715248f797a336915a44960b5e32e622ac8349b16e5d2): 
Error starting userland proxy: failed to bind port: 
Unix.Unix_error(Unix.EADDRNOTAVAIL, "bind", "")

解決方法

ググってみると以下を発見。
https://github.com/docker/compose/issues/3277

これを読むと、ポートをふさいでいるdockerプロセスが残っていたことが原因だったらしい。
Macだったので

lsof -i4TCP:(ポート番号)

でPIDを特定して、そのプロセスをkillすることで解決しました。