Docker

[Docker] docker 재실행시 address already in use 에러 해결

Jane Kwon 2021. 2. 9. 18:36
반응형

 

docker 가 실행 중인 ec2 인스턴스를 중지 후 재시작 했을 때 일부의 컨테이너가 중지되어진 상태

$ docker ps -a
CONTAINER ID    IMAGE                             COMMAND                  CREATED        STATUS                   PORTS                                            NAMES
42758a99a6d2    gitlab/gitlab-ee:12.8.1-ee.0      "/assets/wrapper"        7 days ago     Exited (67) 7 days ago                                                    gitlab
c58fa788ff66    freeipa/freeipa-server:centos-8   "/usr/local/sbin/ini…"   8 days ago     Exited (0) 7 days ago                                                     freeipa
83258de25d65    sonatype/nexus3:latest            "sh -c ${SONATYPE_DI…"   8 days ago     Up About an hour         0.0.0.0:5000->5000/tcp, 0.0.0.0:8081->8081/tcp   nexus
c08e09abadf2    redmine:4.1.0                     "/docker-entrypoint.…"   12 days ago    Up About an hour         0.0.0.0:9292->3000/tcp                           redmine
43a38f743b9f    mysql:5.7.29                      "docker-entrypoint.s…"   12 days ago    Up About an hour         0.0.0.0:3306->3306/tcp, 33060/tcp                mysql
dbef009f6bdd    jenkins/jenkins:lts               "/sbin/tini -- /usr/…"   12 days ago    Up About an hour         50000/tcp, 0.0.0.0:9080->8080/tcp                jenkins

해당 컨테이너를 restart 했을 때 에러 발생
(docker 가 정상적으로 종료되지 않아 발생한 에러인 듯)

$ docker start gitlab freeipa
Error response from daemon: driver failed programming external connectivity on endpoint gitlab (3b39a3fe026b0e86690bd5e247b881aacf5ab15b6287d28ec02a81857c658396): Error starting userland proxy: listen tcp 0.0.0.0:2224: bind: address already in use
Error response from daemon: driver failed programming external connectivity on endpoint freeipa (3cdc3391a606f09173f4bc2538e19e12f7ca7c4fef35ddc97c27315872b1f908): Error starting userland proxy: listen tcp 0.0.0.0:9389: bind: address already in use

포트가 이미 할당되어 있어서 발생한 에러로 해당 포트를 사용 중인지 확인

$ sudo lsof -i :2224
COMMAND PID     USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
nginx   989     root    9u  IPv4  21377      0t0  TCP *:2224 (LISTEN)
nginx   990 www-data    9u  IPv4  21377      0t0  TCP *:2224 (LISTEN)
nginx   991 www-data    9u  IPv4  21377      0t0  TCP *:2224 (LISTEN)

할당되어 있는 포트를 죽인 후 다시 docker 컨테이너를 재시작하면 문제 해결

$ sudo kill -9 989
$ sudo kill -9 990
$ sudo kill -9 991

 

 

 

 

 

반응형