Vagrant shell 设置 phpPgAdmin 密码

Vagrant shell provisioning phpPgAdmin password

如何让我的 Vagrant shell 脚本在配置 phpPgAdmin 时创建用户时提供密码?

即。当我提供此命令 sudo htpasswd -c /etc/phppgadmin/.htpasswd vagrant 时,它会提示为 vagrant 用户输入密码,以便我可以登录到 phpPgAdmin。我如何将其编写到我的 Vagrantfile 随附的 shell 配置脚本中?

首先,您需要强制htpasswd 从标准输入读取密码。可以通过提供 -i 开关来完成。

其次,您需要将字符串传递到 htpasswd 标准输入。这可以通过多种方式实现。例如,您可以将 echo 的标准输出重定向到 htpasswd.

的标准输入

所以生成的命令看起来像这样

echo "123456" | htpasswd -i -c /etc/phppgadmin/.htpasswd vagrant

使用 Apache 2.2,而 -i 是在 2.4.4 上引入的,下面的命令可以工作:

htpasswd -bc /etc/phppgadmin/.htpasswd vagrant password