Я использую контейнер докеров с ubuntu: 14.04 и некоторые приложения на C++, которые я скомпилировал внутри контейнера докеров.Как запустить приложение из контейнера докеров из ОС хоста?
Возможно ли запустить приложение, находящееся внутри контейнера из ОС хоста (в моем случае Win 7)?
Что-то вроде:
docker run <path-to-binary>/mybinary -f 10 -o output.txt
UPDATE:
Да, это возможно
docker run -it <my-image> <path-to-binary>/mybinary
Так в идеале я хочу приложения внутри докер будет так же, как родные приложения на ОС Windows.
Также возможно указать файлы и папку в ОС хоста в качестве входных аргументов для приложения, которое контейнер-докер не может видеть?
UPDATE:
Я попытался установить общую папку в контейнере запуска
docker run -v C:\shared_with_VM:/temp my_image
, а также
docker run -v "C:\shared_with_VM":/temp my_image
Но я получаю сообщение об ошибке:
C:\Program Files\Docker Toolbox\docker.exe: Error response from daemon: Invalid
bind mount spec "C:\\shared_with_VM:/temp": invalid mode: /temp.
See 'C:\Program Files\Docker Toolbox\docker.exe run --help'.
Как сказал here формат правильный путь на Windows, должны быть
docker run -v /c/shared_with_VM:/temp my_image
Попробуйте этот синтаксис в Windows: 'docker run -v // c/Users/mrgloom/Рабочий стол/данные:/data' –
n2o