从Vagrantfile中注销/login
我目前正在尝试通过运行docker提供程序( https://www.vagrantup.com/docs/docker/ )的其他VagrantFiles来完成Vagrantfile以用作泊坞窗主机。
我使用centos/atomic-host
作为基础框。 问题是,当我跑上vagrant up
我得到:
由Vagrant执行的Docker命令没有成功完成! 下面显示了与命令输出一起运行的命令。
命令:“docker”“ps”“-a”“-q”“–no-trunc”
Stderr:无法连接到Docker守护进程。 docker守护程序是否在这个主机上运行?
这是由于stream浪者不是docker组的一部分。 我通过将这添加到我的Vagrantfile来解决这个问题:
# Add user vagrant to docker group $docker_group = <<-DOCKER_GROUP groupadd docker usermod -a -G docker vagrant systemctl restart docker DOCKER_GROUP config.vm.provision "docker_group", type: "shell", privileged: true, inline: $docker_group
我第一次遇到stream浪汉的时候,仍然有例外,但是第二次起作用。 我怀疑的原因是,在将stream浪用户添加到docker组后,我需要注销/login以使更改生效。
为了logging,我尝试在我的$docker_group
脚本的末尾添加newgrp docker
$docker_group
但是这并没有解决问题。 我怀疑docker提供商开始一个单独的会议。
有人find这个解决scheme?
我不知道Vagrantfile,但我从你的问题中了解到,你需要一些方法来刷新用户的组,而无需重新login。
如果是这样的话,以下几点可以帮助你:
- 为什么不能再次向用户求助:您可能只需再次login到用户,并且所有用户的组都将被更新。
- 或者你可以试试Legooolas提到的这种方法。
我几乎不认为你提到的问题是与Vagrantfile,它只是它的方式。 要更新用户的configuration,您需要重新与用户login。 不过,如果你想find一个方法,上述两个可能会帮助你。