Установка и использование Zope 2 и PostgreSQL на Ubuntu 13.10
Ubuntu | Комментировать запись
Zope 2 – это мощный и простой в использовании веб-фреймворк, который в данном случае используется как фронт-энд PostgreSQL.
Работая совместно, данные программы позволяют быстро разрабатывать высококачественные приложения с базами данных с интерфейсом HTML/XML в масштабируемой и безопасной среде.
Несмотря на простоту в использовании данной системы, процесс ее установки, как правило, запутанный, поскольку в Debian/Ubuntu нет ни одного пакета, который содержит и устанавливает все необходимые компоненты. Данное руководство написано, чтобы заполнить этот пробел.
Основная сложность инсталляции Zope +PostgreSQL – это необходимость использования адптера, соединяющего эти два компонента. Psycopg2 считается быстрым и надежным адаптером баз данных, но может потребовать устранения некоторых неисправностей в процессе установки.
Проверено: процедура установки, описанная ниже, действительна для версий Zope, PostgreSQL, PsycopgDA, ZPsycopgDA.
При возникновении каких-либо трудностей во время выполнения данного руководства, пожалуйста, оставьте свой комментарий.
Установка PostgreSQL
Прежде чем устанавливать пакеты Debian или Ubuntu, нужно войти в систему как root и обновить репозиторий пакетов:
sudo su
apt-get update
Если нужно распаковать некоторые пакеты, связанные с Zope:
apt-get install zip
Затем просто установите PostgreSQL (в данной статье используется версия 9.1.12):
apt-get install postgresql
Установка Zope
Сначала установите virtualenv, который изолирует инсталляцию Zope от остальной среды Python на данномVPS:
apt-get install python-virtualenv
Затем создайте каталог в /home
mkdir /home/server
cd /home/server
Создайте виртуальную среду Python для инсталляции Zope:
virtualenv --no-site-packages my_zope
cd my_zope
Активируйте виртуальную среду:
source bin/activate
Установите пакет python-dev, который понадобится для компиляции Zope из исходного кода:
apt-get install python-dev
В браузере найдите номер последней версии Zope. Не нужно загружать ее, просто запишите ее номер, он пригодится в дальнейшем:
http://download.zope.org/Zope2/index/
Затем установите Zope (при необходимости замените версию 2.13.21 более современной):
pip install --pre
--index-url=http://download.zope.org/Zope2/index/2.13.21/ Zope2
Теперь все готово для создания экземпляра Zope. В данной статье в качестве каталога Zope используется /home/server/zope:
mkzopeinstance
Перейдите в этот каталог:
cd /home/server/zope
Передайте права на него пользователю postgres, что упростит процесс подключения Zope к PostgreSQL:
chown -R postgres:postgres *
Теперь в конфигурационном файле zope нужно указать, что Zope необходимо запускать через учетную запись postgres (чтобы открыть файл, используйте любой текстовый редактор, в статье это vi):
vi etc/zope.conf
Найдите директиву effective-user, раскомментируйте ее и задайте значение postgres. Строка должна выглядеть так:
effective-user postgres
Установка Psycopg2 и ZPsycopgDA
Установите все необходимые пакеты:
apt-get install libpq-dev
Загрузите пакет Psycopg, найдя последнюю версию на http://www.init.d.org (при необходимости измените номер версии):
wget http://initd.org/psycopg/tarballs/PSYCOPG-2-5/psycopg2-2.5.2.tar.gz
Чтобы распаковать Psycopg:
tar xvfz psycopg*gz
Установите psycopg2:
cd psycopg2*
python setup.py build
python setup.py install
Далее нужно внести ZPsycopgDA в каталог Zope под названием Products. Это соединит Zope и Psycopg2.
Загрузите последнюю версию ZPsycopgDA (при необходимости измените номер версии) с этого сайта:
https://pypi.python.org/pypi/ZPsycopgDA/
https://pypi.python.org/packages/source/Z/ZPsycopgDA/ZPsycopgDA-2.4.6.zip#md5=c76a0e1c8708154dcf07d1362ea8c432
Установите ZPsycopgDA, распаковав и переместив каталог в каталог Zope (то есть, /home/server/zope/Products):
unzip ZPsycopgDA*zip
cd ZPsycopgDA*
mv ZPsycopgDA /home/server/zope/Products
Установите Zope ZSQLMethods:
easy_install Products.ZSQLMethods
Запуск Zope
/home/server/zope/bin/zopectl start
Создание БД
Теперь нужно создать базу данных. Откройте учетную запись postgres.
su postgres
createdb my_first_database
Используйте веб-браузер для подключения к Zope и базе данных.
point your web browser to ip.address.of.server:8080, the Zope management interface will be displayed
Log-in using the credentials your provided during mkzopeinstance
select Z Psycopg 2 Database Connection from the drop-down menu
for connection string, use the following: dbname=my_first_database user=postgres
Готово!
Теперь можно приступать к созданию методов SQL для разработки таблиц, выполнения запросов и т.д.
Напишите SQL путем добавления объектов Z SQL Method (в выпадающем меню) в интерфейсе управления Zope.
Tags: PostgreSQL, Ubuntu 13.10, Zope 2