主机上应该在哪里存活docker卷?
在主机端,所有的挂载点应该位于相同的位置吗? 还是应该反映集装箱内的位置?
例如,为了与Unix文件系统保持一致,在主机端挂载/var/jenkins_home
的最佳位置是什么?
-
/var/jenkins_home
-
/srv/jenkins_home
-
/opt/docker-volumes/jenkins/var/jenkins_home
- 其他地方 ?
这绝对取决于你想在主机上安装卷的位置。 只是不要将其映射到任何系统文件位置。
在我看来,反映容器内部位置的卷并不是一个好主意,因为你将有许多容器,并且所有容器都有相似的文件系统结构,所以你将永远无法隔离容器写入。
有了jenkins,由于Jenkins官方的docker图像以用户“jenkins”运行,所以在主机上创buildjenkins用户并将主机上的/ home / jenkins映射到容器上的/ var / jenkins_home不失为一个好主意。
不要使用显式的主机:容器挂载,而应考虑使用命名卷。 这有几个好处:
- 它们可以轻松地共享到其他容器中
- 他们是主机不可知的(如果你没有在该机器上的特定安装,它将失败)
- 他们可以作为Docker世界的一stream公民来pipe理(
docker volume
) - 你不必担心把它们放在你的主机上;)