Ответ 1
Итак, теперь у меня было время проанализировать песочницу vm и написать ее другим пользователям. Как вы правильно указали в своем редактировании вопроса, его настройка контейнера докеров в песочнице, которая смешивается с двумя отдельными пользователями root:
-
через
ssh [email protected] -p 2222
вы попадаете в контейнер докеров, называемый "песочница". Это версия CentOS 6.8 (Final), содержащая все службы HDP, особенно услуги ambari. Конфигурация приводит к изменению пароля при первом входе в систему для пользователя root. Внутри этой виртуальной машины вы также можете выполнитьambari-admin-password-reset
и установить там пароль для администратора ambari. -
через консольный доступ к хосту докеров, на котором запущен Centos 7.2, здесь вы можете войти в систему с помощью пароля root по умолчанию для виртуальной машины, как показано в документах HDP.
/li >
Приступая к вашему второму вопросу с помощью висячего docker exec, он кажется ошибкой в этой конкретной версии докеров. Если вы Google, что, вы найдете проблемы, обсуждающие эту или похожие проблемы с докере.
Поэтому я подумал, что было бы неплохо просто обновить хост через yum update
. Однако это оказалось трудным путем.
yum попытался обновить ядро, но жаловался, что на части загрузки не хватает места.
Итак, я переместил часть загрузки в корневой раздел:
- отредактируйте /etc/fsab и закомментируйте загрузочную запись
- unmount/boot
- mv/boot
- cp -a/boot.org/boot
- grub2-mkconfig -o/boot/grub2/grub.cfg
- grub2-install/dev/sda
- перезагрузка
После этого я обнаружил, что конфигурация докера нарушена, и докер больше не запускается. В журналах он жаловался на
"Ошибка запуска демона: ошибка инициализации графического редактора: \" /var/lib/docker \ "содержит другие графические драйверы: devicemapper; пожалуйста очистить или явно выбрать драйвер хранилища (-s)"
Итак, я отредактировал /etc/systemd/system/multi -user.target.wants/docker.service и изменил параметр ExecStart на:
ExecStart=/usr/bin/dockerd --storage-driver=overlay
После a service docker start
и a docker start sandbox
. Контейнер снова работал, и я мог войти в контейнер, и после перезагрузки сервера ambari-сервера все снова работало.
И теперь - с новой версией докерера 1.12.2, docker exec sandbox ls
снова работает.
Итак, чтобы подвести итог, команда docker exec имеет ошибку в этой конкретной версии песочницы, но вы должны подумать дважды, если хотите обновить свою песочницу.