Ошибки и коды · Инструкция
Docker: port is already allocated — как найти конфликт порта
В `ports` первый номер относится к хосту. Два сервиса не могут одновременно слушать один и тот же host IP/port, даже есл
Короткий ответ
Ошибка означает, что host-port уже занят другим контейнером или процессом. Найдите владельца порта, остановите его либо измените левую часть mapping `HOST:CONTAINER`, например `8081:80`.
Что делать
- Посмотрите контейнеры: Выполните `docker ps --format "table {{.Names}} {{.Ports}}"`.
- Найдите host-процесс: На ОС проверьте слушателя порта (`ss`/`lsof`/`Get-NetTCPConnection`).
- Выберите решение: Остановите ненужный процесс/контейнер или назначьте другой host-port.
- Исправьте Compose: Измените, например, `"8081:80"`, сохранив внутренний container-port.
- Пересоздайте сервис: Запустите `docker compose up -d` и проверьте `docker compose ps`.
Важно
Не меняйте container-port наугад: приложение внутри образа может слушать фиксированный порт.
Что учитывать
Не меняйте container-port наугад: приложение внутри образа может слушать фиксированный порт.
Источники и проверка
Фактическая часть сверена по первичным источникам (в т.ч. Compose services reference). Пример и формулировки — редакция N1RO на 2026-09-17.