Laravel homestead after.sh无法自动设置自定义配置

时间:2017-09-03 13:49:51

标签: bash shell ssh vagrant homestead

我正在使用laravel / homestead包并且我尝试在“after.sh”文件上设置一些配置,但没有成功。

在运行命令“vagrant up”后,我想做出以下声明:

1-安装sshpass依赖项而不询问(y / n)

sudo apt-get -y install sshpass

2-创建ssh密钥而不询问(文件/密码)

ssh-keygen -b 2048 -f ~/.ssh/mykeyname-t rsa -N ''

3-将ssh id复制到域而不询问(密码)

sshpass -p mypassword ssh-copy-id -i ~/.ssh/mykeyname user@domain

当流浪汉出现时,我希望能够与命令联系:

ssh -i ~/.ssh/mykey user@domain

如果我手动完成所有这些操作它可以正常工作,但我想知道是否可以在“after.sh”中创建脚本以自动化它并准备好在部署机器时使用。

我试图在“after.sh”上写下这些行,但在部署机器时它还没有准备好使用。

它似乎只适用于第2步,从不在第3步工作。 任何人都可以帮助我,或告诉我是否可以这样做?

谢谢你的帮助,对不起我的英语。

1 个答案:

答案 0 :(得分:0)

我找到了答案。

在步骤2和3之间,创建sshkey和copysshid我需要先使用以下命令将域添加到known_hosts

ssh-keyscan domain>> ~/.ssh/known_hosts

然后在通过vagrant up部署机器后,我能够使用以下命令在没有密码的情况下登录shh:

ssh -i ~/.ssh/mykey user@domain

谢谢大家。