ZMS-Installation unter Windows

Mit 'Products.ZMS' steht im Python Package Index (PyPi) ein zentral zugängliches Installations-Paket zur Verfügung, das mit easy_install auf allen gängigen Betriebssystemen eingerichtet werden kann. Der Installer sorgt automatisch für die komplette System-Umgebung, inklusive aller erforderlichen Zope-Komponenten.

Für eilige Leser

Sofern auf Ihrem Rechner eine übliche Python-Umgebung installiert ist, wechseln Sie in das Scripts-Verzeichnis und rufen einfach easy_install auf.Anschliessend können Sie mit mkzopeinstance eine Zope-Instanz erzeugen, welche die Laufzeit-Umgebung für ZMS bereit stellt:

D:\data\virtpy\Scripts>easy_install Products.ZMS

D:\data\virtpy\Scripts>mkzopeinstance

Installation im Detail

ZMS ist eine Python-Software; daher muss zunächst Python installiert werden. Empfohlen werden die Versionen 2.6 oder 2.7. Der Python-Installer existiert für alle gängigen Betriebssysteme. Voraussetzung für die ZMS-Installation ist das Vorhandensein einer typischen Python-Umgebung; diese wird in drei Schritten erzeugt:

  1. Python installieren
  2. Setuptools installieren: Das Python Modul setuptools stellt u.a. easy_install bereit, damit man Python Packete direkt aus dem Web installieren
  3. Virtualenv erzeugen: das Python Modul virtualenv erzeugt eine gespiegelte zusätzliche "virtuelle" Python.Umgebung, welche auf der primären Python-Installation basiert. In dieser virtuelle Umgebung können die eigenen Python Anwendungen laufen. Die virtuelle Umgebung kann jederzeit gelöscht werden, ohne dass die primäre Python-Installation davon betroffen ist.

Dann wird in der virtuellen Umgebung per easy_install Das Python-Package Products.ZMS installiert; das Package zieht aufgrund definierter Abhänigkeiten automatisch alle erforderlichen Python-Resourcen (in erster Linie Zope-Komponenten). Abschliessend kann dann eine Zope-Instanz erzeugt werden, welche den Applications-Server für ZMS bereitstellt.

Im folgenden wird die ZMS-Installation beispielhaft auf einem Windows-System erläutert:

1. Installation Python (am Beispiel Python 2.6 für Win32)

Für Windows (und alle anderen Betriebssysteme) existiert ein ausführbarer Python-Installer, den man sich von der Python-Website herunterladen kann:

Website:
http://www.python.org/download/releases/2.6.6/
Download:
http://www.python.org/ftp/python/2.6.6/python-2.6.6.msi
python

Python Installation per msi-File

 

2. Installation Python-Setuptools

Python Setuptools stellt betriebssystem-spezifische Hilfsprogramme für die Installation weiterer Python-Pakete wie z.B. easy_install zur Verfügung. Diese Programme landen im Scripts-Unterordner des Python-Ordners und können von dort gestartet werden.

Website:
http://pypi.python.org/pypi/setuptools/
Donwload:
http://pypi.python.org/packages/2.6/s/setuptools/setuptools-0.6c11.win32-py2.6.exe
setuptools

Die Python-Setuptools werden per exe-File installiert. Der Installer erkennt den Python-Path in der Windows-Registry und platziert die ausführbaren-Programmdateien im Scripts-Verzeichnis der Python-Installation

 

3. Installation virtualenv

screenshot

Für die Installation zusätzlicher Python-Pakete wie z.B. virtualenv wird das Programm "easy_install" verwendet; dieses ruft man in der Windows-Konsole "cmd" auf.

 

a. Per Windows-Konsole ins Script-Verzeichnis wechseln:
cd D:\Programme\Python26\Scripts

b. virtualenv istallieren:
D:\Programme\Python26\Scripts\easy_install virtualenv

TIPP: Hinter einem Proxy muss  auf der Konsole zunächst die Umgebungsvariable http_proxy gesetzt werden, z.B.:
set http_proxy=http://proxy:8080/

4. Erzeugen einer virtuellen Python-Umgebung

Das virtualenv-Paket kann eine Kopie der oben installierten Python-Umgebung erzeugen. Es empfiehlt sich prinzipiell die eigenen Python-Anwendungen in einer solchen virtuellen Umgebung laufen zu lassen. Auf diese Weise kann ZMS (samt eventuell erforderlicher Zusatzpakete wie z.B. Datenbank-Adapter) wieder sehr leicht vom Rechner entfernt werden, ohne dass die primäre Python-Installation davon betroffen ist. Die Python-Installation steht nach Löschen der virtuellen Umgebung  weiterhin für andere Nutzungsszenarien bzw. andere virtuelle Umgebungen zur Verfügung.

virtualenv.exe ausführen und virtuelle Umgebung in einem frei gewählten Zielverzeichnis (hier D:\data\virtpy) erzeugen:
D:\Programme\Python26\Scripts\virtualenv --no-site-packages D:\data\virtpy

screenshot

Erzeugung einer virtuellen Python-Umgebung

 

5. ZMS-Installation und Erzeugung einer Zope-Instanz

Der ZMS-Installer wird nun in der neuen virtuellen Umgebung augeführt; dazu wird das Scripts-Verzeichnis der soeben angelegten Umgebung gewechselt:

cd D:\data\virtpy\Scripts\

und schliesslich per easy_install das ZMS-Paket installiert

easy_install Products.ZMS

Das ZMS-Paket installiert automatisch alle erforderlichen Zusatzpakete (insbesondere Zope). Da ZMS den Zope-Application-Server verwendet, muss anschliessend eine Zope-Instance erzeugt werden. Das dafür erforderliche Script mkzopeinstance befindet sich nun ebenfalls im Scripts-Verzeichnis:

mkzopeinstance.exe

Nachdem das Script auf der Konsole aufgerufen wird, gibt man das Zielverzeichnis für die Zope-Instanz an und die Angaben für den Root-User: mkzopeinstance erzeugt alle Ressourcen für eine Zope-Umgebung samt start-Script.

Die Installation von ZMS zieht automatisch alle erforderlichen Python-Pakete aus dem Web-Verzeichnis PyPI

 
screenshot

Erzeugung einer Zope-Instanz (hier "myzms") in einem beliebigen Zielverzeichnis (hier D:\data\zope\instance\)

 

6. ZMS im Web-GUI von Zope initialisieren

screenshot

Nach dem Starten von Zope durch Aufruf des start-Scripts auf dem bin-Folder der Zope-Instanz (1), kann man über den Webbrowser (2) Port 8080 die Web-Masken betrachten und ZMS als "Product" initialisieren (3). Damit steht die webbasierte Publishing-Umgebung bereit zur Content-Produktion.

 

Links

Products.ZMS 2.13.4
Aktuelle ZMS-Version als installierbares Python Egg
Dokumentation
This book is designed to introduce you to Zope2, an open-source web application server.
Dokumentation
Easy Install is a python module (easy_install) bundled with setuptools that lets you automatically download, build, install, and manage Python packages.

Erstellt von: Dr. F. Hoffmann , SNTL Publishing , erstellt am:  19.01.2012 , zuletzt geändert: 16.02.2012