どうもdocker初心者です。
docker-compose upしてたらポートがどうとかでエラーが出てしまったのでこちらに覚書として。
エラー内容
$ docker-compose up
Creating docker-pictweet_web_1 ... error
ERROR: for docker-pictweet_web_1 Cannot start service web: driver failed programming external connectivity on endpoint docker-pictweet_web_1 (9be26d01c314b15f128b6a7397b94206638b23827ee1b0e47498be9b998ff4d1): Bind for 0.0.0.0:10080 failed: port is already allocated
ERROR: for web Cannot start service web: driver failed programming external connectivity on endpoint docker-pictweet_web_1 (9be26d01c314b15f128b6a7397b94206638b23827ee1b0e47498be9b998ff4d1): Bind for 0.0.0.0:10080 failed: port is already allocated
ERROR: Encountered errors while bringing up the project.
nginxで割り当てたポートがすでに使われているよ〜とのことでエラー。
downして再度upしても変わらず。。
ポートを使用しているプロセスを確認して終了させる
今回問題となったのは10080のポートで、nginxに割り当てていた。下記のコマンドで状況を確認する。
$ lsof -i:10080
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
com.docke 57294 shomiyu 17u IPv6 0x23ca13ee3886a635 0t0 TCP *:amanda (LISTEN)
『com.docke』これってDockerのなんだろ?調べてもよく分からず。笑
とりあえずkillしてみるかと思って(悪い癖w)、下記のコマンドを実行〜!ゾンビなら消え去れーーーー
$ kill 57294
・・・Dockerそのものが終了した。笑
あれはどうやらDocker本体だったようだw
再度Docker本体を起動させてdocker-compose upをしたらうまく立ち上がってくれた。
おわりに
あんまり確証のないことでコマンドを叩くのは良くないのだけれど、開発環境だし(なんだったら完全にテストだし)さらにプロセスの終了なので問題ないかと思ってのコマンド実行。
なぜ起きたかの原因は思い当たる節はいくつもあるものの(なんせ初心者なのでw)、これだというものがはっきりわからないので、それはまたわかったら追記していく。
こういうエラーはまた起こりそうだなーと思ったので次また同じこと起こったら、原因特定できたらいいな。
参考サイト
下記の記事を参考にしました。ありがとうございます。
【docker】ailed: port is already allocated のエラー解決
dockerが起動できない (port is already allocated)