я использую Docker версии 1.13.1, построить 092cba3 на ОС Windows 10.Доля объема данных между двумя докеров контейнерами
У меня есть пользовательский Jenkins контейнер, который строит код из Github в объеме.
Объём /var/jenkins_home/workspace/myjob
.
У меня также есть контейнер Apache, с которым я хочу поделиться томом.
docker-compose.yml
Файл является:
version: '2'
services:
jenkins:
container_name: jenkins
image: jenkins:v1
environment:
JAVA_OPTS: "-Djava.awt.headless=true"
JAVA_OPTS: "-Djenkins.install.runSetupWizard=false" # Start jenkins unlocked
ports:
# - "50000:50000" # jenkins nodes
- "8686:8080" # jenkins UI
volumes:
- myjob_volume:/var/jenkins_home/workspace/myjob
apache:
container_name: httpd
image: httpd:2.2
volumes_from:
- jenkins
volumes:
myjob_volume:
Я в принципе хочу контейнер Jenkins для извлечения кода в объеме, который затем будет виден на (HTTPd) контейнера Apache. Поэтому каждое изменение, которое я делаю для кода из моей IDE и помещенный в Github, будет видимым в контейнере Apache. Том создается в контейнере Apache, но когда я успешно создаю код в контейнере Jenkins, он не отображается в томе в Apache.
РЕДАКТИРОВАТЬ: После запуска 2 контейнера с docker-compose up -d
,
- включить свои объемы от Kitematic
- изменить путь громкости для Apache, чтобы указать на объем
- и, когда Jenkins Я создаю код от Jenkins, Apache видит это, как мне хотелось бы.
Итак ... как я должен делать то же самое из файла docker-compose
?
это должно быть '/ usr/local/apache2/htdocs /'? Не может быть просто что-то вроде '/ var/test' и быть тем же самым? –
Несомненно, это должно быть возможно, но вам нужно будет предоставить настраиваемый файл конфигурации для apache. – thaJeztah
. Пример в этом ответе в основном такой же, как пример установки «объем данных» двухсервисной установки в [официальной документации] (https://docs.docker.com/compose/compose-file/#volume-configuration-reference). – hlovdal