Используемый дистрибутив — Ubuntu 12.04, установка для Debian и других Debian-based дистрибутивов не должна сильно отличаться. Мы будем использовать виртуальное окружение [[http://pypi.python.org/pypi/virtualenv/|virtualenv]], которое позволяет устанавливать библиотеки в выбранный каталог, никак не затрагивая системные версии, не требует прав суперпользователя и при желании позволяет легко удалить установленное приложение без каких-либо последствий. ==== Устанавливаем базовые зависимости ==== {{{% sudo apt-get install build-essential python-dev python-virtualenv git}}}<> ==== Создаём виртуальное окружение ==== Виртуальное окружение будет находиться в домашнем каталоге пользователя. Вы можете поместить его в другое место по желанию. Например, на сервере уместнее будет использовать каталог {{{/srv/}}}. Также разумно создать отдельного пользователя, от которого будет запускаться сервис: {{{% sudo adduser --system --no-create-home --group bnw}}}<
><
> {{{% cd $HOME}}}<
> {{{% virtualenv bnw}}}<
> {{{% cd bnw; source bin/activate}}} ==== Устанавливаем библиотеки, получаем код ==== {{{% mkdir src; cd src}}}<
> {{{% pip install twisted tornado PyRSS2Gen}}}<
> {{{% pip install -e git+https://github.com/fiorix/mongo-async-python-driver.git#egg=txmongo}}}<
> {{{% git clone https://github.com/stiletto/bnw.git}}}<
> {{{% cd bnw; git clone https://github.com/stiletto/linkshit.git}}} ==== Устанавливаем и настраиваем MongoDB ==== {{{% sudo apt-get install mongodb-server}}}<
> И, в принципе, всё, но желательно ещё проделать следующее: * установите в файле {{{/etc/mongodb.conf}}} опции {{{bind_ip = 127.0.0.1}}} и {{{nohttpinterface = true}}} * перезапускаем mongo:<
> {{{% sudo /etc/init.d/mongodb restart}}} * удаляем тестовые базы:<
> {{{% mongo test --eval 'db.dropDatabase()'}}}<
> {{{% mongo local --eval 'db.dropDatabase()'}}} ==== Устанавливаем и настраиваем XMPP-сервер ==== Мы рассмотрим настройку prosody, но вы также можете использовать ejabberd или jabberd2, их настройка во многом аналогична. (Вообще, подойдёт любой сервер, поддерживающий [[http://xmpp.org/extensions/xep-0114.html|XEP-0114: Jabber Component Protocol]], но эти три сервера наиболее популярны и просты в использовании.)<
> {{{% sudo apt-get install prosody}}} ==== Устанавливаем и настраиваем HTTP-сервер ==== ==== Настраиваем и запускаем сервис ==== Шаблон конфига находится в файле {{{config.py.example}}}, копируем его:<
> {{{% cp config.py.example config.py}}}<
> Открываем в любимом редакторе и правим нужные опции. Файл содержит подробные комментарии, так что всё должно быть понятно.