Ответ на мой собственный вопрос.. все еще надеясь на лучший ответ от более хорошо осведомленного человека!!
существует 2 возможности.
1) файловая система Редактирования на хосте непосредственно . Это несколько опасно и имеет шанс завершенного повреждения контейнера, возможно другие данные в зависимости от того, что идет не так, как надо.
2) Изменение сценария запуска к чему-то, что никогда не перестало работать как запуск удара, выполнение фиксирования/редактирования и затем изменение программы запуска снова к желаемой (как узел или независимо от того, что это было прежде).
[еще 1128] детали:
1) Используя [1 113]
docker ps
, чтобы найти, что рабочие контейнеры или
docker ps -a
находят все контейнеры (включая остановленные) и
docker inspect (containername)
, ищут "идентификатор", одно из первых значений.
Это - часть, которая содержит деталь реализации и могла бы измениться, знать, что можно потерять контейнер этот путь.
Переходят в [1 118]
/var/lib/docker/aufs/diff/9bc343a9..(long container id)/
, и там Вы найдете все файлы, которые изменяются к изображению, на котором контейнер основан. Можно перезаписать файлы, добавить или отредактировать файлы.
Снова, я не рекомендовал бы это.
2), Как описан в https://stackoverflow.com/a/32353134/586754, можно найти конфигурацию json config.json в пути как [1 121]
/var/lib/docker/containers/9bc343a99..(long container id)/config.json
Там, можно изменить args от, например, "nodejs app.js" к "/bin/bash". Теперь перезапустите услуги докера и запустите контейнер (необходимо видеть, что это теперь правильно запускает). Необходимо использовать
docker start -i (containername)
, чтобы удостовериться, что это немедленно не выходит. Можно теперь работать с контейнерным и/или более поздним присоединением с [1 123]
docker exec -ti (containername) /bin/bash
кроме того, CP докера довольно полезно для копирования файлов, которые были отредактированы за пределами контейнера.
кроме того, нужно только отступить к тем мерам, если бы контейнер более или менее "потерян" так или иначе, таким образом, любое изменение было бы улучшением.
У меня была проблема с контейнером, который не запустится из-за плохого изменения конфигурации, которое я внес. Я смог скопировать файл из остановленного контейнера и отредактировать его. что-то как:
docker cp docker_web_1:/etc/apache2/sites-enabled/apache2.conf .
(исправляют файл)
docker cp apache.conf docker_web_1:/etc/apache2/sites-enabled/apache2.conf
Можно отредактировать контейнерную файловую систему непосредственно, но я не знаю, является ли это хорошая идея. Сначала необходимо найти путь каталога, который используется, поскольку время выполнения поддерживает контейнер. Выполненный docker container inspect id/name
. Ищите ключ UpperDir
в выводе JSON.
, Который является Вашим каталогом.