Ошибки при установке php7.0-fpm в Ubuntu 16.04, работающем в контейнере
При попытке установить php7.0-fpm
# apt-get install php7.0-fpm
Я получаю следующую ошибку (скопировано с /var/log/apt/term.log
):
Preparing to unpack .../php7.0-fpm_7.0.8-0ubuntu0.16.04.2_amd64.deb ...
Unpacking php7.0-fpm (7.0.8-0ubuntu0.16.04.2) ...
Processing triggers for ureadahead (0.100.0-19) ...
Processing triggers for man-db (2.7.5-1) ...
Setting up php7.0-fpm (7.0.8-0ubuntu0.16.04.2) ...
Creating config file /etc/php/7.0/fpm/php.ini with new version
invoke-rc.d: initscript php7.0-fpm, action "start" failed.
dpkg: error processing package php7.0-fpm (--configure):
subprocess installed post-installation script returned error exit status 1
Processing triggers for ureadahead (0.100.0-19) ...
Errors were encountered while processing:
php7.0-fpm
Итак, проблема существует, но что ее вызывает?
Как предложено здесь, я попробовал следующее, но ошибки не найдено:
root@ubuntu:/etc/apt# /usr/sbin/php-fpm7.0 --test
[08-Sep-2016 08:44:44] NOTICE: configuration file /etc/php/7.0/fpm/php-fpm.conf test is successful
Я также попытался удалить и переустановить php7.0-fpm, как предложено здесь, но это не имело никакого значения.
Можете ли вы предложить, как исправить эту ошибку? Есть ли еще полезные сообщения об ошибках где-нибудь?
ОБНОВИТЬ:
Это происходит при установке php7.0 в контейнер linux. Ошибка не возникает при установке на виртуальной машине от того же хостинг-провайдера. Так что, возможно, установка пытается установить что-то, что "выходит за пределы" для контейнера.
Мой "обходной путь" - использовать виртуальную машину вместо контейнера:-)
2 ответа
Я столкнулся с подобной проблемой при использовании сервера Elastichosts Container (контейнер Arachsys). Единственный способ заставить php7.0-fpm "говорить" о том, что не так, - запустить его вручную в режиме демона:
/usr/sbin/php-fpm7.0 -D
Это привело к ошибке относительно отсутствующего файла сокета:
ERROR: unable to bind listening socket for address '/run/php/php7.0-fpm.sock': No such file or directory (2)
Как получается каталог /run/php
никогда не создавался во время установки. Создание его вручную и предоставление правильного владельца (www-data) решило проблему для меня (после перезагрузки).