Я создаю пользовательское изображение докеров с официального изображения jenkins. Я хочу установить maven на изображение и exteralize конфигурационный файл maven. Но я потерпел неудачу. После запуска контейнера существует пустой каталог /etc/maven
. Я думаю, что это может быть проблема разрешения, но я не могу решить ее после исследования на полдня. Это мой докер файл:Как экстернализировать файл контейнера докера
FROM jenkins
USER root
RUN apt-get update && apt-get install -y maven
То, что я пытался тогда в Докер-compose.yml:
jenkins:
build: /docker/jenkins/
volumes:
- /srv/docker/jenkins:/var/jenkins_home
- /srv/docker/maven/conf:/etc/maven:rw # the rw flag has no effect!
- /srv/docker/maven/repository/:/m2:rw
Я попытался удалить каталог /srv/docker/maven
и пусть контейнер создать его на первое время Бег.
Затем я попытался добавить команду VOLUME /etc/maven
в файл докеров до или после инструкции RUN apt-get update && apt-get install -y maven
. Не использовать.
Я также пробовал chmod ugo+wx /srv/docker/maven
, но все без эффектов.
Спасибо за ваш ответ. Существует ли обычная практика для экстернализации файла '/ etc/foo/bar'configration? Docker дает возможность управлять данными контейнеров, и мне интересно, как решить эту проблему в режиме доклерлиза, более гибким способом. –
Вам нужны «контейнеры объема данных», см. Https://docs.docker.com/engine/userguide/containers/dockervolumes/. Конфигурация затем может быть сохранена в контейнере объема данных, который можно сохранить и экспортировать. –