Содержание
Ошибка: Docker: Ошибки команд (yaml, not found, in use...)
Это сборник «глупых» ошибок, которые возникали при работе с
docker-compose
и отнимали много времени.
`yaml: ... did not find expected key`
Причина: Ошибка отступов в файле
docker-compose.yml
. YAML очень чувствителен к пробелам. Даже один лишний или недостающий пробел ломает всю структуру. Решение: Внимательно проверять отступы. Каждый новый уровень должен иметь на два пробела больше, чем предыдущий.
`additional properties '...' not allowed`
Причина: В
docker-compose.yml
попал посторонний текст (например, кусок предыдущей инструкции или команды). Решение: Открыть файл и удалить весь «мусор», оставив только код YAML.
`no such file or directory` (при работе с файлами)
Причина 1: Опечатка в пути. Например,
docker--stack
вместо
docker-stack
. Причина 2: Я работаю не на той ВМ! (Например, пытаюсь найти конфиг Apache на Docker-ВМ). Решение: Всегда проверять, на какой машине я нахожусь (
whoami
) и в какой папке (
pwd
).
`Resource is still in use` (при <code>docker compose down</code>)
Причина: Какой-то «контейнер-призрак» (обычно от неудачного эксперимента, как BookStack) не удалился и «держит» сеть.
Решение:
1. Найти "призраков": docker ps -a. 2. Принудительно удалить их: docker rm [имя_контейнера]. 3. Либо использовать команду очистки: <code>docker compose up -d --remove-orphans.
`File ... is being edited by root (with nano ...)`
Причина: «Зависла» предыдущая сессия
sudo nano
. Решение: Найти и «убить» зависший процесс по его ID (
ps aux | grep nano
, затем
sudo kill [PID]
) или удалить «файл-призрак» блокировки (
.имя_файла.swp
).
