为什么在没有 sudo 的情况下运行时清空'docker-machine ls'输出,而'sudo docker-machine ls'工作?



我已将我的用户添加到 docker 组中,docker 和 docker-compose 命令工作正常,但docker ps也显示空列表并使用 sudo。我的 docker 机器命令有问题,这导致我无法eval $(docker-machine env mymachine)eval $(sudo docker-machine env coding-platform-dev)也不起作用。

当我编写 yml 文件时,它会转到 0.0.0.0,而不是分配给 docker 机器的 ip,在我的情况下192.168.99.100

我想出了为什么会这样。 使用docker-machine创建计算机时,有关已创建计算机的所有信息(包括其配置文件、SSH 密钥等(都存储在创建它们的用户的${HOME}/.docker/machine下。

因此,如果一台机器是作为 root 创建的,则这些机器只能由 root 用户看到。docker-machine不像docker本身那样工作,因为没有负责管理机器的守护进程 - 只有一堆静态配置文件代表可用的机器。 因此,即使您是系统上docker组的一员,这也与docker-machine的功能无关。

最新更新