如何从自定义非root用户运行chef-client vagrant provisioner?

时间:2013-12-09 01:40:20

标签: deployment chef vagrant

我想知道有没有办法在vagrant配置中设置用户,以便从非root帐户配置该框?问题是我想在盒子上运行chef-client作为特定用户(部署者),而不是root,但为此我应该运行配置器并首先创建此用户,并且此配置器是在root用户下创建的。

据我所知,一个解决方案是为create deployer用户运行配置,然后将部署的所有与Chef相关的文件和目录更改为部署用户拥有,然后从chef服务器运行实际配置。

有更好的解决方案吗?

1 个答案:

答案 0 :(得分:0)

请原谅我,如果我只是重述问题的后半部分,但似乎您可能想要创建一个最小的起始供应商(以root身份运行),然后将另一个供应商产生为您的预期用户。

以下是我如何安装我的dotfiles作为我的ssh用户(vagrant

的示例
# ... in shell provision script...
su -c "cd /home/vagrant/.dotfiles && bash install.bash" vagrant

Similar Vagrant github issue