У меня есть длительный процесс в контейнере докера, к которому я хотел бы приложить gdb, чтобы посмотреть, какие потоки запущены и получить stacktraces. Я могу подключиться к процессу с хоста, но я не могу разрешить какие-либо символы, потому что исполняемый файл находится в другом месте в файловой системе (он установлен на уровне док-станции), а общие системные библиотеки все застревают в изображении файловой системы докеров где-то в/var/lib/docker.Как я могу подключить gdb к процессу, запущенному в контейнере докера?
Я могу сгенерировать основной файл и использовать gdb, чтобы посмотреть на него, указав путь хоста к исполняемому файлу, но поскольку системные библиотеки находятся в неправильных местах и загружены в неправильные местоположения в файле corefile , Я не получаю от этого никакой информации.
Есть ли у меня какие-либо опции, которые я забыл?
Вы можете быть в состоянии установить GDB в образ, а затем использовать '' Докер запустить --volumes-from'' установить файлы из другого контейнера, если вы поделились, что Докер установленный объем. – Andy