Образ Docker Nginx запускается, но завершается с ошибкой «порт уже используется» - PullRequest
0 голосов
/ 13 октября 2019

У меня есть докер-контейнер с alphine-nginx изображением. Я помещаю 5 файлов конфигурации Nginx в этот контейнер, но он не работает и завершается ошибкой с «портом, который уже используется» внутри контейнера. Каждый файл конфигурации содержит свой порт, но он не запускается при запуске.

error.log имеет:

019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:80 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:80 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:2447 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:2447 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:2450 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:2450 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:2448 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:2448 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:2449 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:2449 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:80 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:80 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:2447 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:2447 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:2450 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:2450 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:2448 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:2448 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:2449 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:2449 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:80 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:80 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:2447 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:2447 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:2450 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:2450 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:2448 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:2448 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:2449 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:2449 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:80 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:80 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:2447 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:2447 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:2450 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:2450 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:2448 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:2448 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:2449 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:2449 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:80 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:80 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:2447 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:2447 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:2450 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:2450 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:2448 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:2448 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to 0.0.0.0:2449 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: bind() to [::]:2449 failed (98: Address in use)
2019/10/13 14:57:17 [emerg] 21#21: still could not bind()

netstat -ltnp info:

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 127.0.0.11:33623        0.0.0.0:*               LISTEN      -
tcp        0      0 0.0.0.0:2447            0.0.0.0:*               LISTEN      9/nginx: master pro
tcp        0      0 0.0.0.0:2448            0.0.0.0:*               LISTEN      9/nginx: master pro
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      9/nginx: master pro
tcp        0      0 0.0.0.0:2449            0.0.0.0:*               LISTEN      9/nginx: master pro
tcp        0      0 0.0.0.0:2450            0.0.0.0:*               LISTEN      9/nginx: master pro
tcp        0      0 :::2447                 :::*                    LISTEN      9/nginx: master pro
tcp        0      0 :::2448                 :::*                    LISTEN      9/nginx: master pro
tcp        0      0 :::80                   :::*                    LISTEN      9/nginx: master pro
tcp        0      0 :::2449                 :::*                    LISTEN      9/nginx: master pro
tcp        0      0 :::2450                 :::*                    LISTEN      9/nginx: master pro

Как я вижу, что-то запускает Nginx, но как проверить, что это?

Docker ps: Docker ps

1 Ответ

1 голос
/ 13 октября 2019

У вас есть процесс id (PID) процесса, который занял порт. Вы можете использовать ps -p 9 -o comm=, чтобы получить командную строку для этого процесса.

Я думаю, что это докер. В этом случае попробуйте docker ps, чтобы получить список запущенных Docker-контейнеров.

И вы можете просто убить этот процесс с помощью kill -9 9.

Обновлено: У меня естьпопытался запустить контейнер по docker run nginx:1.17.4-alpine и не имеет проблем. Если вы создаете собственный образ или используете дополнительные настройки или конфигурации, которые отличаются от настроек по умолчанию - вам необходимо описать их.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...