docker - 连接到远程 docker 主机
问题描述
我有以下情况。
- 两台机器(物理机)
- 一种是在 Windows Installer 上安装 Docker 的 Windows 10 和安装了 docker-ce 的 ubuntu 18.04。
- 我可以对个人运行命令,这很好。
- 我想在 Windows 机器上从 Docker 连接 Ubuntu Docker 主机。因此,Windows 上的 Docker CLI 指向 Ubuntu 主机上的守护进程。
解决方案
您需要通过在 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 容器
推荐阅读
- c++ - OpenCV / C++:如何有效设置 Raspberry Cam 帧速率
- java - 使用别名和 xpages 控件,如何操作?
- c# - 如何用nuget导出文件?
- javascript - IE 无法评估第二个 if 条件 (&&)
- angular - Angular Chrome Api 数据绑定不起作用
- javascript - Javascript:如果屏幕打开,更改属性在三星上不起作用。想法如何解决?
- asp.net-core - IIS 上的 asp.net 核心延迟与 IIS express 相反
- sql - 将 Sum 除以 Count 多次优化
- git - 如何撤消在 Git 中编辑索引文件?
- cqrs - 如何存储 sagas 的数据?