我正在尝试使用Docker Swarm从本地计算机上运行docker命令。我使用的命令如下
docker -H tcp://<ip address>:2375 ps
docker -H tcp://<hostname of mgmt box>.eastus.cloudapp.azure.com:2375 ps
两个命令渲染Cannot connect to the Docker daemon. Is the docker daemon running on this host?
我可以ssh到管理机器并运行docker命令,所以我知道docker正常工作。没有任何与资源相关联的安全组,因此似乎没有任何防火墙问题。
直接在机器上运行docker ps
我可以看到swarm在端口2375上运行。我试过通过端口2375,2376,3375,3376访问它
答案 0 :(得分:1)
看起来这些端口不公开,我必须创建一个ssh隧道source
Azure容器服务部署的DC / OS和Docker Swarm群集公开了REST端点。但是,这些端点不对外界开放。为了管理这些端点,您必须创建Secure Shell(SSH)隧道。建立SSH隧道后,您可以针对群集端点运行命令,并通过您自己系统上的浏览器查看群集UI。本文档将指导您从Linux,OS X和Windows创建SSH隧道。
答案 1 :(得分:0)
听起来您还没有设置到群集的安全隧道。如果您没有通过隧道访问,请参阅:https://azure.microsoft.com/en-us/documentation/articles/container-service-connect/
答案 2 :(得分:0)
你可能想要的是Docker-Machine?
1) Docker-Machine :
Docker Machine是一款可让您安装Docker Engine的工具 虚拟主机,并使用docker-machine命令管理主机。您 可以使用Machine在本地Mac或Windows上创建Docker主机 框,公司网络,数据中心或云端 AWS或Digital Ocean等提供商。
您可以使用docker-machine:
- 在Mac或Windows上安装并运行Docker
- 配置和管理多个远程Docker主机
- 提供群集群
2) 也许通过
编写脚本3)查看Azure容器服务文档
Connect to an Azure Container Service cluster
创建Azure容器服务群集后,您需要连接 到集群以部署和管理工作负载。本文介绍 如何从远程计算机连接到群集的主VM。