有没有办法管理多个 Docker 主机之间的切换

有没有办法管理多个 Docker 主机之间的切换

我刚刚在一台闲置的笔记本电脑上设置了一个远程 Docker 主机,我可以通过以下方式访问它

docker -H 192.168.1.201 run hello-world

但我不想每次想要在远程运行图像时都添加 -H,也不想通过环境变量设置 DOCKER_HOST,因为我打算在 DO Droplet 上设置另一个远程主机。

有没有办法在活动的 Docker 主机之间切换,就像使用 pyenv 切换 Python 版本一样?(或者 nodenv、rbenv 或同等版本...)

我希望能够做类似的事情

docker switch-host laptop

它会自动将 DOCKER_HOST 设置为指向我的笔记本电脑的 IP,也许

docker switch-host local

我们又回到本地机器上运行容器了。

作为参考,我设置的远程主机位于 Windows 10 笔记本电脑内的 Ubuntu VM 上,而“客户端”是通过 Windows 10 桌面上的 WSL 的 Ubuntu 18.04。

答案1

更改DOCKER_HOST的Bash脚本

#!/bin/bash

# script to set DOCKER_HOST variable to list, otherwise unset
# run by "source <script_name> <option>" or ". <script_name> <option>"

case $1 in
    "laptop") DOCKER_HOST=192.168.1.1;;
    "droplet") DOCKER_HOST=10.1.1.1;;
    *) unset DOCKER_HOST
esac

相关内容