Что делает эта команда docker run? - PullRequest
0 голосов
/ 20 мая 2019

У меня есть команда запуска докера, мне просто интересно, что делает часть -v "..":".." -w ".." maven mvn clean ...?

docker run --rm --name ${DOCKER_IMAGE_NAME}_build -v "$(pwd)":/usr/src/mymaven -w /usr/src/mymaven maven:3.6.0-jdk-8-alpine mvn clean install package

Я думаю, что это сопоставление локального тома в ОС "$ (pwd)" с папкой докера внутри тома докера, которая является / usr / src / mymaven, затем она выполняет команду с "w" внутри / usr / src / mymaven ", но из-за сопоставления он выполняется внутри локального каталога $ pwd, верно? поэтому он выполняет часть "maven:3.6.0-jdk-8-alpine mvn clean install package", которая запускает процесс сборки mvn, но что такое maven:3.6.0-jdk ... Я знаю, что это такое изображение, но как оно узнает, откуда взять это изображение и как можно впоследствии выполнить эту команду для maven для этого изображения?

1 Ответ

2 голосов
/ 20 мая 2019

часть -v этой команды привязывает том к контейнеру, который вы запускаете. в этом случае -v "$ (pwd)": / usr / src / mymave добавляет ваш текущий директор как / usr / src / mymave в контейнер.

часть -w команды устанавливает ваш рабочий каталог в контейнере в / usr / src / mymave и часть после этого на самом деле

maven: 3.6.0-jdk-8-alpine -> это ваш стартовый контейнер

mvn clean install package -> эта команда запускается внутри контейнера (поэтому в рабочем каталоге / usr / src / mymave)

в основном эта команда запуска запускает контейнер, запускает maven и делает это с вашим текущим каталогом, в котором вы запускаете в качестве источника для запуска.

для получения дополнительной информации об аргументах: Докер документация по аргументам запуска

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...