关于 is not shared from OS X and is not known to Docker.

跑Prometheus时出现了这么一个错误:

docker: Error response from daemon: Mounts denied: The path /prometheus/prometheus.yml is not shared from OS X and is not known to Docker.You can configure shared paths from Docker -> Preferences… -> File Sharing.See https://docs.docker.com/docker-for-mac/osxfs/#namespaces for more info.

如下:提示docker来自守护程序的错误响应:已拒绝安装:路径/prometheus/prometheus.yml不是从OS X共享,并且Docker不知道。
在这里插入图片描述

尝试办法:

在这里插入图片描述
按照提示,找到Docker -> Preferences… -> File Sharing.添加Sharing,但是我的路径已经包括在/Users下了,我尝试添加/Users/parkin/prometheus,由于有重叠的部分存在,尝试失败。

解决办法:

我出错的原因:之前在run的时候未给定绝对路径,运行时可能去查找/prometheus目录了,没有找到。虽然在File Sharing中配置过 /Users文件夹共享,凡是该文件夹下的子目录路径都可以共享,但是你必须要告诉它你的父目录是什么,也就是指定绝对路径。

就好比:一个你不认识的小孩子突然跑到你面前叫你阿姨(没给定全路径),你肯定一脸懵,第一反应肯定会拒绝,因为你不知道他是谁,也不知道他为什么叫你阿姨。但是如果他告诉你他是你的朋友XXX的儿子(指定全路径),你不就知道他是谁了吗?

~$ docker run -d -p 9090:9090 --name prometheus -v /Users/parkin/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml prom/prometheus --config.file=/etc/prometheus/prometheus.yml

在这里插入图片描述

尝试访问:可以了

在这里插入图片描述
我的问题是出在这。不同的操作可能有不同的问题所在,以上如理解有误,欢迎指正。

发布了74 篇原创文章 · 获赞 19 · 访问量 4万+

猜你喜欢

转载自blog.csdn.net/weixin_43770545/article/details/90717903
今日推荐