Я использую ddev для локальной разработки. Я использовал его без проблем в течение нескольких недель, но несколько дней назад я не могу его запустить
Когда я использую команду ddev start
, я получаю следующее:
Не удалось запустить mautic: невозможно слушать на необходимых портах, порт 1358 уже занят,
Рекомендации по устранению неполадок на https://ddev.readthedocs.io/en/stable/users/usage/troubleshooting/#unable-listen
Но если я выполняю команду lsof -i :1358
, я получаю пустой ответ.
Я пытался отключить redis-commander
(сервис, который должен слушать порт 1358), но тогда проблема переходит на порт 443.
Я также попробовал понизить версию с v1.24.3 до v1.23.3, но ничего не изменилось.
Есть идеи, как устранить эту проблему?
Ответ
Проблема, с которой вы столкнулись, связана с тем, что DDEV не может запустить ваш проект, так как не может занять необходимый порт (в данном случае порт 1358). Прежде всего, давайте рассмотрим, как вы можете решить эту проблему:
-
Проверка занятости порта:
Поскольку командаlsof -i :1358
не показывает, что порт 1358 занят, возможно, проблема связана с его занятостью в Docker или с другой службой, которая не отображается в результатах вашего запроса. Чтобы убедиться в этом, выполните следующую команду, чтобы получить список всех активных процессов, использующих порты:sudo netstat -tuln | grep 1358
Если вы видите что-то, использующее этот порт, вам следует остановить его или изменить его настройки.
-
Перезапуск Docker:
Иногда причина может заключаться в том, что Docker не освобождает порты. Перезапустите Docker, чтобы освободить все занятые порты:-
На Linux:
sudo systemctl restart docker
- На Mac и Windows через Docker Desktop: просто перезапустите приложение Docker Desktop.
-
-
Изменение конфигурации DDEV:
Если проблема продолжает возникать, вы можете попытаться изменить конфигурацию портов, которые использует DDEV. Для этого перейдите в вашу директорию проекта и выполните команду:ddev config global --additional-port=YOUR_NEW_PORT_NUMBER
Замените
YOUR_NEW_PORT_NUMBER
на другой свободный порт, например, 1359. После этого попробуйте снова запустить DDEV:ddev start
-
Проверка использования сервиса Redis:
Если вы отключилиredis-commander
, убедитесь, что никаких других сервисов не используется для использования порта 1358. Вы можете также проверить конфигурацию Redis, чтобы убедиться, что она настроена правильно. -
Проверка логов DDEV:
Просмотрите логи DDEV, чтобы получить более детальное представление о возможных ошибках. Вы можете получить доступ к логам с помощью следующей команды:ddev logs
-
Обновление DDEV:
Также вы можете проверить, есть ли более новая версия DDEV. Периодически версии могут содержать исправления ошибок:ddev version
Если есть обновление, выполните:
ddev self-update
Если после выполнения всех вышеуказанных шагов проблема не решена, возможно, стоит обратиться за помощью к сообществу DDEV или официальной документации по устранению неполадок. Например, ссылка, указанная в вашем сообщении: DDEV Troubleshooting.
Надеюсь, это поможет вам решить проблему с запуском DDEV!