Hi, there!今回は簡単なTipsだよ。
さっきAWS内のEC2インスタンスでDockerコンテナを立ち上げたら、
[SAmmys@MyInstance]$ docker-compose up -d
Error response from daemon: driver failed programming external connectivity on endpoint operation (4d238a89bc8c8e9728b854f7fcfbadc176f59234aafa870f7264bfb48970d040):
Bind for 0.0.0.0:8080 failed: port is already allocated
というエラーが出たよ。どうやら、直前にインスタンスが落ちちゃったときの残骸がインスタンスの再起動後も残っちゃって、それが悪さしちゃった感じだね。
最近出たAmazon Linux 2023って旧の Amazon Linux 2 と違って、障害発生時にインスタンスを再起動させると、直前まで動いてたプロセスも復元しようしてくれるんだ。
今回、たまたまそれが裏目に出ちゃった、って感じだね。
実際上記のトラブルは、一旦コンテナを落としてから
[SAmmys@MyInstance]$ sudo systemctl restart docker.service
でdockerサービス自体を再起動させてから再度compose upさせればOKだよ。
開発機だから今まで何度もインスタンス落としたりしてたけど、今回初めてこんな事象に当たったよ。だから出現頻度としてはレアな方なのかも。
ということで、備忘録レベルの簡単なTipsでした~!