【发布时间】:2017-09-04 21:46:51
【问题描述】:
我正在尝试使用名为 PHPCI 的工具构建 Docker 映像。我几乎可以做所有事情,但是当我需要运行 setup 脚本来创建数据库、设置用户名/密码并为工具本身做某种默认配置时,我的第一个问题就出现了。
脚本应该被称为(see here - 从 Composer 安装):
php ./console phpci:install
它会开始询问一些问题。这是所询问内容的完整示例:
******************
Welcome to PHPCI
******************
Checking requirements... OK
Please answer the following questions:
-------------------------------------
Please enter your MySQL host [localhost]:
Please enter your MySQL database name [phpci]:
Please enter your MySQL username [phpci]:
Please enter your MySQL password:
Your PHPCI URL ("http://phpci.local" for example): http://phpci.localdomain
Use beanstalkd to manage build queue? <yes|no>
Skipping beanstalkd configuration.
Setting up your database... OK
Admin Email: <email>
Admin Name: <user_name>
Admin Password:
User account created!
我将大部分参数存储在ENV 变量中,以便在容器启动后轻松读取它们。或者更好的是他们可以是ARG。我的问题是如何让安装脚本从ENV 变量中读取值?
我知道那里有很多答案,但其中大多数是针对yes|no 的问题,这似乎很容易,但我找不到任何关于这个问题的有用信息。任何帮助都非常受欢迎。
【问题讨论】:
-
不是heredoc 或
expect? -
@IgnacioVazquez-Abrams 你在说this??
-
就是那个。
标签: linux bash shell docker environment-variables