Назад | Перейти на главную страницу

Как сохранить все данные Jenkins на томе EBS в докере

у меня есть Официальное репозиторий Docker jenkins работает на экземпляре Ubuntu. В этом документе предлагается способ создания тома для изоляции всего файла данных Jenkins.

Экземпляр EC2 имеет корневой том и второй том в / dev / xsdf:

NAME    MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
xvda    202:0    0   8G  0 disk
└─xvda1 202:1    0   8G  0 part /
xvdf    202:80   0  10G  0 disk

ЕСЛИ попытался смонтировать этот том как / var / jenkins_home в Ubuntu, а затем сослаться на него во время выполнения:

docker run --restart=always -p 8080:8080 -p 50000:50000 -v \
/home/ubuntu/jenkins_home:/var/jenkins_home -w /var/jenkins_home jenkins/jenkins:lts

Он работает нормально, но я не вижу файлов на хосте в /var/jenkins_home

Есть ли другой (правильный) способ смонтировать том EBS на хосте и использовать его для тома данных Jenkins?

Я хотел бы иметь возможность сделать резервную копию, сделав снимок тома, и позволить данным сохраняться между перезапусками.

Спасибо

Если я правильно понимаю ваш вопрос, похоже, что у вас просто обратный синтаксис громкости. Подумайте о синтаксисе так:

-v /path/to/host/directory:/path/to/directory/inside/container

Так что в твоем случае /var/jenkins_home - это правильный каталог внутри контейнера, но вам нужно будет искать в /home/ubuntu/jenkins_home в настоящее время, чтобы увидеть данные из контейнера.

Вот рабочий пример на моем ноутбуке:

[10:46 PM]~/Desktop ➭ mkdir jenkins_test
[10:46 PM]~/Desktop ➭ cd jenkins_test/
[10:46 PM]~/Desktop/jenkins_test ➭ docker run --rm -it --name jenkins \
➭ -p 8080:8080 \
➭ -p 50000:50000 \
➭ -v /Users/jadametz/Desktop/jenkins_test:/var/jenkins_home \
➭ jenkins/jenkins:lts

...

[10:52 PM]~/Desktop/jenkins_test ➭ ls -lh
total 80
-rw-r--r--   1 jadametz  staff   1.6K Aug 28 22:48 config.xml
-rw-r--r--   1 jadametz  staff   102B Aug 28 22:48 copy_reference_file.log
-rw-r--r--   1 jadametz  staff   159B Aug 28 22:48 hudson.model.UpdateCenter.xml
-rw-------   1 jadametz  staff   1.7K Aug 28 22:48 identity.key.enc
drwxr-xr-x   3 jadametz  staff   102B Aug 28 22:48 init.groovy.d
-rw-r--r--   1 jadametz  staff    94B Aug 28 22:48 jenkins.CLI.xml
-rw-r--r--   1 jadametz  staff   1.7K Aug 28 22:50 jenkins.install.InstallUtil.installingPlugins
-rw-r--r--   1 jadametz  staff     6B Aug 28 22:48 jenkins.install.UpgradeWizard.state
drwxr-xr-x   2 jadametz  staff    68B Aug 28 22:48 jobs
drwxr-xr-x   3 jadametz  staff   102B Aug 28 22:48 logs
-rw-r--r--   1 jadametz  staff   907B Aug 28 22:48 nodeMonitors.xml
drwxr-xr-x   2 jadametz  staff    68B Aug 28 22:48 nodes
drwxr-xr-x  51 jadametz  staff   1.7K Aug 28 22:49 plugins
-rw-r--r--   1 jadametz  staff   129B Aug 28 22:50 queue.xml
-rw-r--r--   1 jadametz  staff    64B Aug 28 22:48 secret.key
-rw-r--r--   1 jadametz  staff     0B Aug 28 22:48 secret.key.not-so-secret
drwx------  11 jadametz  staff   374B Aug 28 22:48 secrets
drwxr-xr-x   5 jadametz  staff   170B Aug 28 22:48 updates
drwxr-xr-x   3 jadametz  staff   102B Aug 28 22:48 userContent
drwxr-xr-x   3 jadametz  staff   102B Aug 28 22:48 users
drwxr-xr-x  25 jadametz  staff   850B Aug 28 22:48 war