我成功地创建了一个带有两个节点的集群。但是,当我使用docker-compose build && docker-compose up
来启动我的项目时,它崩溃并导致以下错误:ERROR: Error response from daemon: datastore for scope "global" is not initialized
这是一个非常非常简单的过程:docker run swarm create
群哈希:1477bcd7778d083e02a80c352d4f1b87
docker-machine create -d virtualbox --swarm --swarm-master --swarm-discovery token://1477bcd7778d083e02a80c352d4f1b87 myswarmmaster
docker-machine create -d virtualbox --swarm --swarm-discovery token://1477bcd7778d083e02a80c352d4f1b87 myremotenode1
eval $(docker-machine env --swarm myswarmmaster)
docker-compose build && docker-compose up
然后我得到错误:ERROR: Error response from daemon: datastore for scope "global" is not initialized
我在Fedora 25上运行docker。
最佳答案
在Ubuntu机器上执行docker swarm init
时遇到相同的错误。我发现是swarm尝试访问端口2377,因此首先打开端口2377 sudo ufw allow 2377
现在docker swarm init
工作并显示了这样的消息
Swarm initialized: current node (sdf23fsd3f24fr3f2f) is now a manager.
To add a worker to this swarm, run the following command:
docker swarm join \
--token SW3Wwww-1-0dfsdffsdfdsfsdfdsfdfdsfdsf-dsfsdfdsfdsfdsfd \
52.15.91.31:2377
关键是确保适当的端口可用。
希望这可以帮助
关于docker - 错误:来自守护程序的错误响应:作用域 “global”的数据存储未初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42727877/