Если при попытке запустить docker-compose up вы видите сообщение вроде:
The command 'docker-compose' could not be found
это означает, что система не находит программу docker-compose — инструмент для запуска многоконтейнерных приложений.
Эта проблема может возникать по нескольким причинам, и ниже мы разберём все основные варианты и способы решения.
✅ Почему возникает ошибка?
📌 1. Вы используете старую/неустановленную версию Compose
Современный Docker CLI включает Compose V2 как плагин, и команда запускается не как docker-compose, а как:
docker compose
то есть без дефиса.
📌 2. Docker Compose просто не установлен
Особенно на Linux-системах или в WSL-среде, где установка Docker Desktop не гарантирует наличие команды docker-compose.
📌 3. Бинарный файл установлен, но не в PATH
Команда может быть установлена, но система не знает, где её искать — из-за проблем с переменной окружения PATH.
🚀 Что делать — пошаговое руководство
✔️ Шаг 1 — проверьте, работает ли Compose V2
В терминале введите:
docker compose version
Если вывод есть — используйте docker compose вместо старого docker-compose.
Это лучший и самый современный способ запуска Compose-проектов.
✔️ Шаг 2 — проверьте старую команду
Если вам нужно именно старое docker-compose, проверьте:
docker-compose --version
Если система выдаёт “command not found”, значит его нет или он не доступен через PATH.
✔️ Шаг 3 — установить Docker Compose (если нужно)
📌 На Linux (Ubuntu)
sudo apt update
sudo apt install docker-compose-plugin
После этого проверка:
docker compose version
⚠️ В новых версиях это уже V2 — docker compose, а не docker-compose.
✔️ Шаг 4 — установка «классического» бинарника (если требуется)
Если вам обязательно нужен именно docker-compose (v1-совместимость):
sudo curl -L "https://github.com/docker/compose/releases/download/v2.38.2/docker-compose-$(uname -s)-$(uname -m)"
-o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version
⚠️ Обратите внимание: URL и версия могут меняться — проверяйте актуальную версию на GitHub.
✔️ Шаг 5 — убедитесь, что путь в PATH
Если бинарник установлен, но система всё ещё не находит его:
echo $PATH
Если /usr/local/bin или другой путь отсутствует — добавьте его:
export PATH=$PATH:/usr/local/bin
А затем перезапустите терминал.
✔️ Шаг 6 — если вы на Windows / WSL
Сообщение типа:
The command 'docker-compose' could not be found in this WSL 2 distro.
часто означает, что Docker Desktop не запущен или не подключена интеграция WSL.
✅ Запустите Docker Desktop
✅ В настройках включите WSL Integration
✅ Перезапустите терминал
🛠 Частые ситуации и советы
✅ Если вы видите ошибку, но docker compose работает — лучше переходить на новый синтаксис:
docker compose up -d
❗ Старый docker-compose постепенно устаревает — новые версии Docker теперь ориентируются на плагин V2.
📌 Итог
| Сценарий | Решение |
|---|---|
docker-compose не найден |
Перейдите на docker compose |
Нужно сохранить старый docker-compose |
Установите бинарник вручную |
| Compose есть, но не найден в PATH | Добавьте путь в PATH |
| WSL2 / Docker Desktop | Включите интеграцию и запустите Docker Desktop |