Ubuntu13.10にZope2とPostgreSQLをインストールして使用する方法
序章
Zope 2は、強力で使いやすいWebベースの開発フレームワークです。 これは、PostgreSQLのフロントエンドとして使用される場合に特に当てはまります。
一緒に使用すると、HTML / XMLインターフェイスを備えた高品質のデータベースアプリケーションを、高度にスケーラブルで安全かつ保守可能な方法で迅速に構築できます。
結果として得られるシステムの使いやすさに比べて、必要なすべてのコンポーネントを含み、インストールする単一のDebian / Ubuntuパッケージがないため、インストールプロセスは簡単ではないことがよくあります。 それがこのチュートリアルが埋めることを目的としたギャップです。
Zope + PostgreSQLをインストールする際の主な課題は、これら2つを接続するアダプターを使用する必要があることです。 Psycopg2は、高速で信頼性の高いデータベースアダプターですが、インストールプロセス中に、カスタムのトラブルシューティングを行う場合があります。
以下に記載されているインストール手順は、例として以下にリストされているZope、PostgreSQL、PsycopgDA、ZPsycopgDAのバージョンで機能することが確認されています。 これらの手順を実行した後に問題が発生した場合は、コメントを投稿してください。チュートリアルを新鮮で関連性のあるものに保つために、私たち全員が協力します。
PostgreSQLをインストールする
DebianまたはUbuntuパッケージをインストールする前に、スーパーユーザーに変更してパッケージリポジトリの更新を実行することをお勧めします。
sudo su
apt-get update
zope関連のパッケージの一部を解凍したい場合はapt-getinstallzip
その後、PostgreSQLをインストールするだけです(この例では9.1.12がバージョンです)。
apt-get install postgresql
Zopeのインストール
virtualenvをインストールします。これは、zopeのインストールをVPS上の他のPython環境から分離するのに役立ちます。
apt-get install python-virtualenv
/homeにディレクトリを作成します
mkdir /home/server
cd /home/server
zopeインストール用の仮想Python環境を作成する
virtualenv --no-site-packages my_zope
cd my_zope
仮想環境をアクティブ化する
source bin/activate
ソースからZopeをビルドするために必要なpython-devをインストールします
apt-get install python-dev
Webブラウザーを使用して、最新の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
そのzopeインスタンスディレクトリに変更します
cd /home/server/zope
所有権をpostgresユーザーに変更します。 これにより、ZopeがPostgreSQLに簡単にアクセスできるようになります。
chown -R postgres:postgres *
zope設定ファイルを変更して、postgresユーザーとしてZopeを実行します(好きなエディターを使用してください。例として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
解凍
tar xvfz psycopg*gz
psycopg2をインストールします
cd psycopg2*
python setup.py build
python setup.py install
次のステップは、ZPsycopgDAをZopeProductsディレクトリに追加することです。 これにより、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
ZopeZSQLMethods製品をインストールします
easy_install Products.ZSQLMethods
Zopeを起動します
/home/server/zope/bin/zopectl start
データベースの作成
もちろん、データベースを使用するには、最初にデータベースを作成する必要があります。 これを行うには、postgresユーザーに変更します。
su postgres
createdb my_first_database
これで、Webブラウザーを使用して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
全部終わった!
ZopeとPostgreSQLを初めて使用する場合、次に行うことは、テーブルを作成したり、クエリを実行したりするためのSQLメソッドを作成することです。
Zope管理インターフェースで(ドロップダウンメニューから)Z SQLメソッドオブジェクトを追加して、SQLを記述します。