你好我不知道我的问题是否更多是针对serverfault或者在这里,我希望devops不会介意我在这里发帖。
我正在使用 mesos / marathon / docker / glusterfs 处理堆栈,我对文档湖感到厌倦。
我正在寻找一个示例marthon deployement文件,用于使用glusterfs驱动程序进行部署。
作者说我们之前应该创建音量,但他并没有说出安装音量。
"container": {
"type": "DOCKER",
"docker": {
"image": "kylemanna/openvpn:latest",
"parameters": [
{
"key": "volume-driver",
"value": "glusterfs"
},
{
"key": "cap-add",
"value": "NET_ADMIN"
}
],
"network": "BRIDGE",
"portMappings": [
{
"containerPort": 1194
}
]
},
"volumes": [
{
"containerPath": "/etc/openvpn",
"hostPath": "openvpn-data",
"mode": "RW"
}
]
}
我的容器在马拉松中继续重启,日志显示/usr/local/bin/ovpn_run: line 16: /etc/openvpn/ovpn_env.sh: No such file or directory
在我的gluster文件服务器上,我在/data/openvpn-data/ovpn_env.sh
我没有看到/mnt
中的任何挂载点,我猜马拉松本身就是坐骑,但是由于容器不断重启,我看不到它。
我做了docker inspect
检查文件系统的存储位置,我发现它存储在/var/lib/docker-volumes/_glusterfs/openvpn-data
所以这是我的问题:
ovpn_env.sh
或/data/myvolume/ovpn_env.sh
/data/myvolume/etc/openvpn/ovpn_env.sh
答案 0 :(得分:0)
查看以下问题
和
的文档引用:
目前无法使用带有插件驱动程序的Docker卷。
您必须在启动容器之前创建卷/装载,并在通过Marathon启动应用程序时映射主机文件夹(您已经这样做了)。我猜这就是为什么它目前被称为“持久性本地卷”......
答案 1 :(得分:0)
在"参数"中定义它部分,像这样:
"parameters": [
{
"key": "volume-driver",
"value": "glusterfs"
},
{
"key": "volume",
"value": "openvpn-data:/etc/openvpn"
}
]