2015-05-27 5 views
0

Мне удалось сломать контейнер для докеров. Мой контейнер основан на baseimage-docker, и я поместил бесконечный цикл в сценарий /etc/rc.local. Теперь мне нужно каким-то образом отредактировать файл rc.local внутри контейнера без SSH, так как демон SSH не будет запускаться (поскольку он запускается после /etc/rc.local). Есть ли способ исправить это?Редактировать файлы в контейнере Docker без SSH?

+0

Пожалуйста переместите свой вопрос [су] или [С.Ф. ]. Здесь [вне темы] (http://stackoverflow.com/help/on-topic). –

ответ

0

вам нужно docker exec -it container_id /bin/bash так, что вы будете иметь TTY внутри контейнера, см документ https://docs.docker.com/reference/commandline/cli/#exec и если у вас есть Docker версия < 1.3 вы можете использовать nsenter https://github.com/jpetazzo/nsenter

+1

OP, можете ли вы восстановить свое изображение и исправить проблему? Это то, что вы в идеале хотели бы сделать, контейнеры не являются виртуальной машиной, вы должны иметь возможность перестроить изображение и создать экземпляр нового контейнера без проблем. SSH обычно является анти-шаблоном для контейнера докеров (http://techblog.constantcontact.com/devops/a-tale-of-three-docker-anti-patterns/). docker exec решит вашу проблему, как упоминалось. – ferik

Смежные вопросы