我使用their GitHub中所述的持久存储进行了Grafana-docker部署,以便为我的公司进行测试。 我完全按照他们的说法做了(我粘贴)并且有效:
# create /var/lib/grafana as persistent volume storage
docker run -d -v /var/lib/grafana --name grafana-storage busybox:latest
# start grafana
docker run \
-d \
-p 3000:3000 \
--name=grafana \
--volumes-from grafana-storage \
grafana/grafana
问题:如果我重新启动运行它的服务器,“我”会丢失所有配置,我的意思是,我找不到如何以相同的音量启动它(我确定它在那里,但我找不到用它们重新开始图像的方法)。
我也做docker volume ls
,输出很难理解
我正在检查文档并尝试命令,但没有结果,我正在寻找答案,但在这种情况下我找不到如何恢复配置。 我如何开始恢复旧卷,所有配置,仪表板等? 另外:如果可能的话,还有人可以链接到我正确的指南来阅读和理解这个吗?
事先,非常感谢。
答案 0 :(得分:7)
我会推荐以下解决方案:
$ docker volume create grafana-storage
grafana-storage
$ docker volume ls
DRIVER VOLUME NAME
local grafana-storage
这是在UNIX上的/var/lib/docker/volumes/grafana-storage
中创建的。
您可以启动grafana容器并将/var/lib/grafana
的内容(从容器内部)挂载到grafana-storage
,这是一个命名的泊坞窗卷。
启动容器
docker run -d -p 3000:3000 --name=grafana -v grafana-storage:/var/lib/grafana grafana/grafana
当您以root身份转到/var/lib/docker/volumes/grafana-storage/_data
时,您可以看到自己的内容。您可以重复使用此内容(删除您的grafana容器:docker rm -f xxx
)并启动一个新容器。请再次使用-v grafana-storage:/var/lib/grafana
。
--volumes-from
是" old"在更丑陋的方法中实现同样的方法。方式。
此命令将在/var/lib/docker/volumes
中创建一个空卷:
$ docker run -d -v /var/lib/grafana --name grafana-storage busybox:latest
空存储在这里:
cd /var/lib/docker/volumes/6178f4831281df02b7cb851cb32d8025c20029f3015e9135468a374d13386c21/_data/
你开始使用grafana容器:
docker run -d -p 3000:3000 --name=grafana --volumes-from grafana-storage grafana/grafana
来自容器内的/var/lib/grafana
存储空间将存储在您已由busybox容器创建的/var/lib/docker/volumes/6178f4831281df02b7cb851cb32d8025c20029f3015e9135468a374d13386c21/_data/
内。如果删除grafana容器,数据将保留在那里。
# cd /var/lib/docker/volumes/6178f4831281df02b7cb851cb32d8025c20029f3015e9135468a374d13386c21/_data/
# ls
grafana.db plugins
答案 1 :(得分:4)
我只是简单地使用主机文件夹,而不是使用任何类型的命名或未命名的卷
docker run \
-d \
-p 3000:3000 \
--name=grafana \
-v /opt/grafana:/var/lib/grafana \
grafana/grafana
这样做的目的是映射容器目录" / var / lib / grafana /"到目录" / opt / grafana" (在您的docker服务器上根据您的需要进行更改)。
当我们需要使用compose或使用swarm部署来提供多个容器时,Docker卷是很好的。在你的情况下,事情可以保持简单。