如何在docker artifactory容器中使用自己的文件夹作为卷?
我正在按照这些说明运行artifactory容器: https : //www.jfrog.com/confluence/display/RTF/Running+with+Docker
它的工作原理和artifactory启动,但这样我不能使用我自己的主机目录作为容器卷链接。 指南说使用
-v /var/opt/jfrog/artifactory/etc -v /var/opt/jfrog/artifactory/data -v /var/opt/jfrog/artifactory/backup -v /var/opt/jfrog/artifactory/logs
运行容器时的选项,但以这种方式,我得到的卷是存储在一些/ var / lib / docker / volumes /子文件夹。 我想要的是,例如在我的主机的/ opt / artifactory /
所以我试图以这种方式使用卷映射:
-v /opt/artifactory/etc:/var/opt/jfrog/artifactory/etc -v /opt/artifactory/data:/var/opt/jfrog/artifactory/data -v /opt/artifactory/backup:/var/opt/jfrog/artifactory/backup -v /opt/artifactory/logs:/var/opt/jfrog/artifactory/logs
但我得到这个错误:
** ERROR: Artifactory home folder not defined or does not exists at
以前有人试过吗? 我如何pipe理它?
谢谢米歇尔
Artifactory主文件夹未定义或不存在于
这应该意味着export ARTIFACTORY_HOME=/var/opt/jfrog/artifactory
没有被执行(不pipe你是否使用卷)。
这也意味着你应该使用-e ARTIFACTORY_HOME=/var/opt/jfrog/artifactory
环境选项来执行-e ARTIFACTORY_HOME=/var/opt/jfrog/artifactory
。
另请参阅此支持线程 。
OP Mikyjpeg 在评论中补充道:
我最终发现了这个问题:
容器的/var/opt/jfrog/artifactory/etc
文件夹中有一个文件,用于设置所有的环境variables。 这个文件被卷映射删除(因为它不存在于我的主机上),当命令启动时会重新创build,但内容不同。
所以我已经从一个工作容器复制这个文件,放入我的主机etc
映射卷,并再次运行。 现在它工作。我假设
-v
选项在两种情况下都会创build空卷,但现在我知道这不是真的。