Чтобы ответить на ваш точный вопрос, мы можем видеть при проверке вашего изображения (docker inspect nicolaka/netshoot:latest
), что WorkingDir
не определено. В этом случае dir по умолчанию равен /
(см. Что такое WORKDIR по умолчанию в Docker? ). Но вы должны понимать, что это каталог внутри работающего контейнера , а не каталог на вашем хост-компьютере .
Обратите внимание, что команда, которую вы использовали (т. Е. docker inspect some-mongo
), не проверяет ваше фактическое изображение / контейнер, а ту, которую вы выбрали в качестве базы для подключения к вашей сети.
Если я правильно понимаю, ваш файл находится в вашем текущем каталоге в локальной командной строке. Чтобы сделать то, что вы хотите, вам нужно сделать файл mypcap.pcap
доступным для вашего контейнера.
Есть два основных способа сделать это в зависимости от ваших требований.
Создание расширенного изображения
Идея состоит в том, чтобы расширить базовое изображение, скопировав в него файл. Для этого вам понадобится Dockerfile
FROM nicolaka/netshoot:latest
COPY mypcap.pcap .
Затем создайте изображение
docker build . -t myextendedimage:mytag
И запустить контейнер на основе нового образа
docker run -it --net container:some-mongo myextendedimage:mytag tcpdump -qns 0 -X -r mypcap.pcap
Bind смонтировать файл в вашем контейнере
В вашей ситуации это, вероятно, будет моим предпочтительным вариантом. Предполагая, что ваш файл pcap находится в C:\tmp\mypcap.pcap
docker run -it --net container:some-mongo -v C:\tmp\mypcap.pcap:/mypcap.pcap nicolaka/netshoot tcpdump -qns 0 -X -r mypcap.pcap
Обратите внимание, что вы можете смонтировать этот файл в образ где угодно:
docker run -it --net container:some-mongo -v C:\tmp\mypcap.pcap:/my/random/dir/mypcap.pcap nicolaka/netshoot tcpdump -qns 0 -X -r mypcap.pcap