Plone Installieren: Unterschied zwischen den Versionen

Aus Hostsharing Wiki
Zur Navigation springen Zur Suche springen
Zeile 16: Zeile 16:


In der Anleitung findet die Installation im Home-Verzeichnis des accountes xyz00-plone statt.
In der Anleitung findet die Installation im Home-Verzeichnis des accountes xyz00-plone statt.
Die Installation von Plone 4.2 erfolgt weitgehend automatisiert mit Hilfe von buildout, einer Software zur  
Die Installation von Plone 5.0.x erfolgt weitgehend automatisiert mit Hilfe von buildout, einer Software zur Erzeugung reproduzierbarer Installationen.
Erzeugung reproduzierbarer Installationen.


=== Erzeugen der Umgebung mit Paste Script für das buildout ===
=== Erzeugen des Basisordner ===


Zunächst wird mit Hilfe von Paste Script eine Umgebung erzeugt:
Shell Befehl


  xyz00-plone@h99:~$ /opt/python/2.6/bin/paster create -t plone4_buildout plone4
  $ mkdir plone
$ cd plone


Scriptausgabe mit Eingabeaufforderung:
=== Virtualenv für lokale Python Packages ===
Selected and implied templates:
  ZopeSkel#plone4_buildout  A buildout for Plone 4 developer installation
Variables:
  egg:      plone4
  package:  plone4
  project:  plone4
  [...]
Plone Version (Plone version # to install) ['4.1']: 4.2


Nach der Erzeugung der Umgebung muss diese einmalig initialisiert werden:
Shell Befehl


  xyz00-plone@h99:~$ cd plone4/
  $ virtualenv virtualenv
  xyz00-plone@h99:~/plone4$ /opt/python/2.6/bin/python ./bootstrap.py
  $ virtualenv/bin/pip install zc.buildout


=== Konfiguration und Installation mit buildout ===
=== Konfiguration und Installation mit buildout ===


Anschließend muss die zentrale Konfigurationsdatei durch die folgenden Inhalte ersetzt werden. Die fett markierten Einstellungen müssen individuell angepasst werden. Es können weitere Optionen nach Bedarf konfiguriert werden, um beispielsweise zusätzliche Products oder eggs zu installieren.
Nun wird die zentrale Konfigurationsdatei erstellt. Die fett markierten Einstellungen müssen individuell angepasst werden. Es können weitere Optionen nach Bedarf konfiguriert werden, um beispielsweise zusätzliche Products oder eggs zu installieren.


Shell Befehl
Shell Befehl


  xyz00-plone@h99:~/plone4$ nano buildout.cfg
  $ mkdir buildout
$ cd buildout


Inhalt der buildout.cfg
Inhalt der buildout.cfg


# buildout.cfg file for Plone 4 development work
# - for production installations please use http://plone.org/download
# Each part has more information about its recipe on PyPi
# http://pypi.python.org/pypi
# ... just reach by the recipe name
  [buildout]
  [buildout]
parts = 
  extends = http://dist.plone.org/release/5-latest/versions.cfg
    instance
  parts = instance
    zopepy
 
    i18ndude
    zopeskel
    test
#    omelette
  extends =  
    http://dist.plone.org/release/4.2/versions.cfg
   
# Add additional egg download sources here. dist.plone.org contains archives
# of Plone packages.
find-links =
    http://dist.plone.org/release/4.2
    http://dist.plone.org/thirdparty
extensions =
    mr.developer
    buildout.dumppickedversions
sources = sources
versions = versions
# Reference any folders where you have Python egg source code under development here
# e.g.: develop = src/my.package
# If you are using the mr.developer extension and have the source code in a
# repository mr.developer will handle this automatically for you
develop =
# Create bin/instance command to manage Zope start up and shutdown
  [instance]
  [instance]
  recipe = plone.recipe.zope2instance
  recipe = plone.recipe.zope2instance
  # ip-adress muss mit angegeben werden, da sonst der traffic nicht bei HS richtig abgerechnet werden kann.
  user = admin:'''initialpassword'''
'''ip-address = xyz00.hostsharing.net'''
http-address = '''xyz00'''.hostsharing.net:'''12345'''
'''user = admin:password'''
'''http-address = 12300'''
'''ftp-address = 12301'''
'''wbdav-address = 12302'''
debug-mode = off
verbose-security = on
blob-storage = var/blobstorage
  eggs =
  eggs =
    PIL
     Plone
     Plone
     Pillow
# Some pre-Plone 3.3 packages may need you to register the package name here in
# order their configure.zcml to be run (http://plone.org/products/plone/roadmap/247)
# - this is never required for packages in the Products namespace (Products.*)
zcml =
# zopepy commands allows you to execute Python scripts using a PYTHONPATH
# including all the configured eggs
[zopepy]
recipe = zc.recipe.egg
eggs = ${instance:eggs}
interpreter = zopepy
scripts = zopepy
# create bin/i18ndude command
[i18ndude]
unzip = true
recipe = zc.recipe.egg
eggs = i18ndude
# create bin/test command
[test]
recipe = zc.recipe.testrunner
defaults = ['--auto-color', '--auto-progress']
eggs =
     ${instance:eggs}
# create ZopeSkel and paster commands with dexterity support
[zopeskel]
recipe = zc.recipe.egg
eggs =
    ZopeSkel
    PasteScript
    zopeskel.dexterity
# symlinks all Python source code to parts/omelette folder when buildout is run
# windows users will need to install additional software for this part to build
# correctly.  See http://pypi.python.org/pypi/collective.recipe.omelette for
# relevant details.
# [omelette]
# recipe = collective.recipe.omelette
# eggs = ${instance:eggs}
# Put your mr.developer managed source code repositories here, see
# http://pypi.python.org/pypi/mr.developer for details on the format of
# this part
[sources]
#collective.developermanual = git git://github.com/collective/collective.developermanual.git
# Version pindowns for new style products go here - this section extends one
# provided in http://dist.plone.org/release/
[versions]


'''Achtung:''' Der angegebene Benutzer wird mit dem zugewiesenen Kennwort beim ersten Start der Zope-Instanz angelegt. Es empfiehlt sich aus Sicherheitsgründen, dass Kennwort nach dem ersten Start der Zope-Instanz aus der Konfigurationsdatei zu entfernen.
Shell Befehl
 
Nach der Anpassung der Konfigurationsdatei buildout.cfg muss die Installation durch den Aufruf von buildout aktualisiert werden.
 
xyz00-plone@h99:~/plone4$ bin/buildout
 
=== Installation zusätzlicher Softwarepakete ===
 
Zusätzliche Softwarepakete in egg-Form können in das Verzeichnis "src" installiert und im Abschnitt "[buildout]" der "buildout.cfg" unter "eggs" und "develop" eingetragen werden. Zusätzliche Softwarepakete in "Product"-Form können in den Abschnitt "[productdistros]" eingetragen oder in der Verzeichnis "products" installiert werden. Dies gilt gleichermaßen für Eigenentwicklungen wie Softwarepakete von Drittanbietern.
Starten und Stoppen der Instanz
 
=== Zope Instanz starten/stoppen ===


Die Zope Instanz kann über von buildout erzeugte Skripte gestartet oder gestoppt werden.
$ ../virtualenv/bin/buildout
Die Zope Instanz kann mehrer "Plone Sites" verwalten, so dass für jede weitere dom nur eine "Plone_ Site mit entsprechenden namen erstellt wird und die dazugehörige .htaccess erstellt werden muss.


  Start
  # Starten
  xyz00-plone@h99:~/plone4$ bin/instance start
  ../virtualenv/bin/buildout start


Stop
xyz00-plone@h99:~/plone4$ bin/instance stop


=== Erzeugen der Plone Site ===
=== Erzeugen der Plone Site ===

Version vom 12. Oktober 2016, 15:54 Uhr

Plone 5 installieren

Version

Plone 5.0.6 (5016) Es wird ein Daemon benötigt.

CMF 2.2.10

Zope 2.13.24

Python 2.7.9 (default, Jun 29 2016, 13:08:31) [GCC 4.9.2]

PIL 3.3.0 (Pillow)

Installation

In der Anleitung findet die Installation im Home-Verzeichnis des accountes xyz00-plone statt. Die Installation von Plone 5.0.x erfolgt weitgehend automatisiert mit Hilfe von buildout, einer Software zur Erzeugung reproduzierbarer Installationen.

Erzeugen des Basisordner

Shell Befehl

$ mkdir plone
$ cd plone

Virtualenv für lokale Python Packages

Shell Befehl

$ virtualenv virtualenv
$ virtualenv/bin/pip install zc.buildout

Konfiguration und Installation mit buildout

Nun wird die zentrale Konfigurationsdatei erstellt. Die fett markierten Einstellungen müssen individuell angepasst werden. Es können weitere Optionen nach Bedarf konfiguriert werden, um beispielsweise zusätzliche Products oder eggs zu installieren.

Shell Befehl

$ mkdir buildout
$ cd buildout

Inhalt der buildout.cfg

[buildout]
extends = http://dist.plone.org/release/5-latest/versions.cfg
parts = instance
[instance]
recipe = plone.recipe.zope2instance
user = admin:initialpassword
http-address = xyz00.hostsharing.net:12345
eggs =
    Plone
    Pillow

Shell Befehl

$ ../virtualenv/bin/buildout
# Starten
../virtualenv/bin/buildout start


Erzeugen der Plone Site

Eine laufende Instanz kann jederzeit über http://www.example.com:12300/ mit dem Webbrowser direkt angesprochen werden. Dabei ist der jeweilige Paketname und der zugewiesene Port für HTTP zu verwenden.

Mit Hilfe des Zope Management Interfaces (ZMI) wird nun eine Plone Site angelegt. Dazu wird im Webbrowser http://xyz00.hostsharing.net:12300/manage aufgerufen und nach dem Login mit den vergebenen Zugangsdaten auf den Button "Add Plone Site" klicken. Die Plone Site sollte plone_site_example_com genannt werden.

Die laufende Plone Site kann anschließend über http://www.example.com:12300/plone_site_example_com mit Webbrowser angesprochen werden.

Konfiguration von Apache

Um die erzeugte Plone Site auch über einen registrierten Domainnamen ansprechen zu können, wird im Verzeichnis der jeweiligen Subdomain eine Konfigurationsdatei .htaccess mit dem folgenden, vorgegebenen Inhalt hinterlegt. Dabei müssen der Name des Pakets, der Name der Domain und der zugewiesene Port für HTTP angepasst werden.

xyz00-plone@h99:~$ nano ~/doms/example.com/subs/www/.htaccess

RewriteEngine on
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^(.*) http://xyz00.hostsharing.net:12300/VirtualHostBase/http/www.example.com:80/plone_site_example_com/VirtualHostRoot/$1 [proxy,last]
RewriteCond %{SERVER_PORT} ^443$
RewriteRule ^(.*) http://xyz00.hostsharing.net:12300/VirtualHostBase/https/www.example.com:443/plone_site_example_com/VirtualHostRoot/$1 [proxy,last]

automatisches Packen der ZopeDB

Füge dazu die folgende Anweisung in Deine Cron-Konfiguration ein:

wget --http-user=zopeuser --http-password=zopepassword http://xyz00.hostsharing.net:30210/Control_Panel/Database/main/manage_pack --post-data="days3Afloat=7&submit=Pack"

In diesem Fall werden alle Änderungen, die jünger als 7 Tage sind in der ZODB erhalten bleiben und können unter gewissen Umständen rückgängig gemacht werden.

automatisches Starten nach Server-Reboot

Füge dazu die folgende Anweisung in Deine Cron-Konfiguration ein:

@reboot /home/pacs/xyz00/users/doms/plone/bin/instance start