配置 docker 以通过网络进行通信
Configuring docker to communicate over the network
我有远程机器。我分两步进入:
1) ssh -A login@server.com
然后在这台机器里面我进入我的远程机器:
2)ssh -A mymachine
这台远程机器没有 public IP
我可以在 DOCKER_HOST=xx.xx.xx.xx
中指定。
如何配置我的 docker,使我的膝上型电脑有 docker client
而远程机器有 docker
server
守护进程?
docker client/server API 需要一个可达的 API。正如您无法 运行 mymachine 上的网络服务器并使用笔记本电脑上的网络浏览器访问它一样,如果没有您可以访问的 IP,您也无法配置 DOCKER_HOST。
我能想到的选项包括:
- 运行 远程命令,在我的机器上或 server.com。
- 设置一个 VPN,为您的笔记本电脑提供一个可以访问我的机器的 IP
- 使用 ssh 端口转发创建一个隧道,您可以将 DOCKER_HOST 指向该隧道。例如
ssh -L 2376:mymachine:2376 login@server.com
然后是 export DOCKER_HOST=localhost:2376
(我还没有测试过,它需要 sshd 来允许该选项)。
我有远程机器。我分两步进入:
1) ssh -A login@server.com
然后在这台机器里面我进入我的远程机器:
2)ssh -A mymachine
这台远程机器没有 public IP
我可以在 DOCKER_HOST=xx.xx.xx.xx
中指定。
如何配置我的 docker,使我的膝上型电脑有 docker client
而远程机器有 docker
server
守护进程?
docker client/server API 需要一个可达的 API。正如您无法 运行 mymachine 上的网络服务器并使用笔记本电脑上的网络浏览器访问它一样,如果没有您可以访问的 IP,您也无法配置 DOCKER_HOST。
我能想到的选项包括:
- 运行 远程命令,在我的机器上或 server.com。
- 设置一个 VPN,为您的笔记本电脑提供一个可以访问我的机器的 IP
- 使用 ssh 端口转发创建一个隧道,您可以将 DOCKER_HOST 指向该隧道。例如
ssh -L 2376:mymachine:2376 login@server.com
然后是export DOCKER_HOST=localhost:2376
(我还没有测试过,它需要 sshd 来允许该选项)。