首页 > 解决方案 > 连接到远程 docker 主机

问题描述

我有以下情况。

  1. 两台机器(物理机)
  2. 一种是在 Windows Installer 上安装 Docker 的 Windows 10 和安装了 docker-ce 的 ubuntu 18.04。
  3. 我可以对个人运行命令,这很好。
  4. 我想在 Windows 机器上从 Docker 连接 Ubuntu Docker 主机。因此,Windows 上的 Docker CLI 指向 Ubuntu 主机上的守护进程。

标签: dockerdocker-machine

解决方案


您需要通过在 daemon.json 或启动脚本中添加以下设置来在 Ubuntu Docker 主机上启用 docker 远程 API

[root@localhost ~]# cat /etc/docker/daemon.json
{
  "hosts": [ "unix:///var/run/docker.sock", "tcp://0.0.0.0:2376" ]
}

重新启动 docker 后,您可以通过套接字文件在本地连接到 docker 主机,并通过侦听端口(2376)远程连接到 docker 主机。验证 Ubuntu 上 docker 的监听端口

[root@localhost ~]# netstat -ntlp | grep 2376
tcp6       0      0 :::2376                 :::*                    LISTEN      1169/dockerd

现在您可以像这样在 Windows 中设置 DOCKER_HOST 环境变量,从 Windows 机器连接到这个 docker

PS C:\Users\YellowDog> set DOCKER_HOST=tcp://<Ubuntu-Docker_Host-IP>:2376
PS C:\Users\YellowDog> docker ps

它将列出在 Ubuntu Docker 主机上运行的 docker 容器


推荐阅读