Pull to refresh

Собираем виртуалку с phpdaemon'ном на Ubuntu 10.10

Configuring Linux *
Sandbox

Вступление


Добрый день, всем читателям Хабры. Я бы хотел рассказать всем вам очень простой и быстрый способ собрать виртуалочку с пхп-демоном и при этом не перенапрячь свой отдыхающий и празднующий мозг. Зачастую на рабочих или домашних компьютерах по тем или иным, религиозным или политическим причинам установлен Windows. Ставить на него php или nginx дело неблагодарное и уж если есть необходимость работать с phpdaemon'ом то вариантов и вовсе не остается. Необходима nix система.

В данной статье не рассматриваются вопросы почему я выбрал Ubuntu, а не Debian, зачем использовать phpdaemon а не php-fpm и т.п. Возможно, что кому-то придется столкнуться с подобной проблемой и если эта статья позволит Вам сэкономить драгоценное время и провести его с семьей или за работой — значит моя задача выполнена успешно.

Поехали!


  • 1. Ставим на нашу систему VirtualBox, думаю тут проблем ни у кого не возникнет (качать тут).
  • 2. Скачиваем свеженький образ Ubuntu (выбираем тут)
  • 3. В VirtualBox создаем виртуалку для Ubuntu и ставим туда систему

Итак, первоначальный этап завершен, к этому моменту у нас на компьютере должен быть VirtualBox c виртуалкой Ubuntu 10.10.

Небольшой тюнинг Ubuntu


Мне в работе совершенно не нужен Гном, поэтому можно отключить графическую оболочку Ubuntu, дабы она не кушала ресурсы нашего компьютера. Наверняка существует множество способов это сделать, я воспользовался таким:

sudo nano /etc/init/gdm.conf

далее комментируем строчки

#start on (filesystem
# and started hal
# and tty-device-added KERNEL=tty7
# and (graphics-device-added or stopped udevtrigger))


CTRL + O сохранит изменения в файле. CTRL + X выйдет из него.

После перезагрузки виртуалной машины Гном не стартанет. Но при желании его можно запустить командой startx.

Следующим шагом разумно задать пароль для рута, чтобы каждый раз не пользоваться sudo.

sudo passwd root

Ставим phpdaemon


Устанавливаем php, libevent и pear:
apt-get install php5-cli php5-dev
apt-get install libevent-dev
apt-get install php-pear


Теперь надо поставить 2 pecl-овских расширения. Ставиться по командам они откажутся, сославшись на отсутствие stable версий. Поэтому просто копируем ту ссылку, которую они сами предложат вместо название пакета.

pecl install libevent (pecl install channel://....)
pecl install proctitle (pecl install channel://....)


Ставим Git, он будет нужен для вытягивания свежего ранкита и пхпдемона.
apt-get install git-core

Вытягиваем, ставим и собиаем runkit.
cd /opt
git clone git://github.com/zenovich/runkit.git
cd runkit
phpize
./configure --enable-runkit --enable-modify
make
make install


Теперь сконфигурируем php:
nano /etc/php5/cli/conf.d/phpdaemon.ini

extension=/usr/lib/php5/20090626+lfs/libevent.so
extension=/usr/lib/php5/20090626+lfs/proctitle.so
extension=runkit.so
runkit.internal_override=1


Обратите внимание, что libevent.so и proctitle.so будут лежать там, где автоматом не найдутся, так что придется указать полный путь до soшек.

Теперь осталось только поставить сам phpdaemon:
cd /opt
git clone git://github.com/kakserpom/phpdaemon.git
ln -s /opt/phpdaemon/bin/phpdaemon /usr/bin/phpd


Симлинк был создан исключительно для удобства. Ну и осталось маленькая деталь — выставить права на выполнение.

chmod +x /opt/phpdaemon/bin/phpdaemon

Теперь можно попробовать стартануть демон.

phpd start
Демон скажет что-то вроде [PHPD] FastCGI up. Это означает что Вы не пропустили ни одной строчки и с точностью выполнили все указания. Мои поздравления.

Совершенству нет предела


В такой конфигурации не очень удобно работать, я предпочитаю общаться с серверами, пусть и виртуальными через putty. Для этой цели надо расшарить виртуалку в сеть. Самый простой способ это сделать:
Заходим в сетевые адаптеры нашей виртуальной машины и меняем тип подключения на сетевой мост с нашей реальной сетевой картой. Таким образом Виртуалка получит ip-адрес от Вашего dhcp сервера и к ней можно обращаться по вполне реальному ip адресу.

Посмотреть какой адрес выдался виртуалке можно командой:
ifconfig eth0

Для того чтобы заходить на виртуалку по ssh не забываем поставить openssh-server:
apt-get install openssh-server
Tags: phpdaemonubuntu 10.10virtualbox
Hubs: Configuring Linux
Total votes 16: ↑11 and ↓5 +6
Comments 11
Comments Comments 11

Popular right now