#docker #volume
Вопрос:
Я был бы очень признателен за помощь, так как я боролся в течение нескольких дней…
Я пытаюсь создать java-приложение, используя образ docker на гостевой виртуальной коробке (CentOS 7). После выполнения git-проверки в каталоге в гостевой виртуальной коробке образ docker запускается со следующей командой:
docker run -it --rm --volume $(pwd):/usr/build-app build-monster
Как только запускается образ контейнера docker, он выполняет сценарий оболочки, который изменяет каталоги в /usr/build-app. Именно здесь сценарий завершается ошибкой со следующей ошибкой:
/usr/scripts/docker_start.sh: 2: cd: can't cd to /usr/build-app
Все остальное, что затем ссылается на этот каталог, также терпит неудачу.
Большинство инструкций, которые я читаю, связаны с общим доступом к каталогу с хоста Virtualbox, чего я не пытаюсь делать. Когда я проверяю докера, я вижу, что крепление там:
{
"Type": "bind",
"Source": "/root/build-agent-home/xml-data/build-dir/JOB1",
"Destination": "/usr/build-app",
"Mode": "",
"RW": true,
"Propagation": "rprivate"
}
Внутри файла сборки образа docker я также ссылался на каталог:
…
WORKDIR /usr/build-app/
COPY docker_start.sh /usr/scripts/docker_start.sh
RUN ["chmod", " x", "/usr/scripts/docker_start.sh"]
ENTRYPOINT ["/usr/scripts/docker_start.sh"]
Первоначальная идея состояла в том, чтобы настроить это в bamboo, но после сбоев сборки я изолировал проблему с самим докером, выполнив команды, упомянутые выше. Пожалуйста, помогите!
Комментарии:
1. Вы проверили свою файловую систему контейнера с
ls -l
помощью ?2. Привет @Faeeria. Спасибо вам за ваш ответ. К сожалению, я отказался от Virtualbox. Проблема, по-видимому, связана с созданием томов в Virtualbox. Выполнение той же задачи сборки на агенте, не являющемся Virtualbox, не вызывает проблем.
3. У меня никогда не было никаких проблем с этим в VirtualBox, поэтому я уверен, что это можно сделать. Но рад, что вы нашли другой путь 🙂