установка pecl - как указать параметры? - PullRequest
1 голос
/ 20 января 2020

Я пытаюсь установить расширение event для PHP, используя pecl. Во время установки я получаю несколько подсказок:

Enable internal debugging in Event [no] : 
Enable sockets support in Event [yes] : 
libevent installation prefix [/usr] : 
Include libevent's pthreads library and enable thread safety support in Event [no] : 
Include libevent protocol-specific functionality support including HTTP, DNS, and RPC [yes] : 
Include libevent OpenSSL support [yes] : 
PHP Namespace for all Event classes [no] : 
openssl installation prefix [no] : 

Но из c это происходит только в интерактивном режиме. Мне нужно сделать это без взаимодействия, например, в Dockerfile. Значения по умолчанию не работают для меня, поэтому мне нужно изменить их с помощью параметров командной строки. Как?

Имейте в виду, что мне нужно отвечать по-разному на каждый вопрос, поэтому yes '' | pecl install ... не работает вообще. Также одному из вопросов нужен путь, а не да / нет.

1 Ответ

0 голосов
/ 20 января 2020

Неинтерактивный режим для pecl пока недоступен. Его можно дополнить командой yes. Команда выводит утвердительные ответы до тех пор, пока не прекратит работу.

Вы можете использовать yes с такой трубкой, как это: yes '' | pecl install ...

Редактировать: если вам не нужен вывод, да на каждой итерации, просто выводите ответы как echo 'yes\n no\n ...' | pecl install ...

Дополнительные правки: если вы используете это решение в docker, в Dockerfile вы можете использовать команду docker-php-ext-install event, а затем docker-php-ext-configure ...

...