2015-12-21 2 views
2

В Docker я успешно установил Jenkins. Когда я создаю новое задание, и я хотел бы выполнить sh-файл из моей рабочей области, что является лучшим способом добавить файл в мое рабочее пространство с помощью Docker? Я начал свой контейнер с: docker run --name myjenkins -p 8080:8080 -p 50000:50000 -v /var/jenkins_home jenkinsДобавить файл в рабочую область jenkins с докере

ответ

1

Вы можете скопировать файл из вашей файловой системы в контейнер с помощью простой команды с вашего терминала.

докер ф [OPTIONS] LocalPath | - КОНТЕЙНЕР ПУТЬ

https://docs.docker.com/engine/reference/commandline/cp/

пример:

docker cp /yourpaht/yourfile <containerId>:/var/jenkins_home 
+0

Спасибо! Это работает для меня – Janp95

1

Это зависит немного о том, как запланированного жизненного цикла вашего контейнера Дженкинс является. Если он используется только временно и не вредит, если данные ушли, docker cp, как предложил NickGnd, сделает трюк.

Но поскольку рабочие данные Jenkins, такие как jobconfigs, системные конфигурации и рабочие пространства, будут жить только внутри контейнера, все они будут удалены после удаления контейнера, поэтому, если вы планируете использовать более продолжительную среду Jenkins, вы может захотеть сохранить данные за пределами контейнера, чтобы он выжил, воссоздавая контейнер, запуская новые версии контейнеров и так далее. Это можно сделать с опцией --volume /path/on/host:/path/in/container или ее короткой формой -v на docker run.

Существует также опция --volumes-from, которую вы можете использовать для монтирования, чтобы хранить данные в одном «контейнере данных» и монтировать их в контейнер Jenkins.

Для получения дополнительной информации по этому вопросу, пожалуйста, посмотрите на The docker volumes documentation

Смежные вопросы