我有Docker 官方 jenkins repo在 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
如果尝试在 Ubuntu 中将该卷安装为 /var/jenkins_home,然后在运行时引用它:
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 数据卷?
我希望能够通过拍摄卷快照来备份它,并允许数据在重启之间保留下来。
谢谢
答案1
如果我理解正确的话,你的卷语法好像是倒过来的。想想这样的语法:
-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