Vous êtes ici : Accueil / Debian GNU/Linux / Applications Web / Gestion de contenu / Installer Plone sur Debian

Installer Plone sur Debian

Par Pierre-Yves Landuré Dernière modification 17/04/2013 09:42

Cet article vous donne la procédure d'installation de Plone et supérieur sur un système basé sur la distribution Debian.

Ce guide est testé sur:

  • Debian 6.0 Squeeze
  • Debian 7.0 Wheezy
  • Ubuntu 11.04 Natty Narwhal
  • Ubuntu 11.10 Oneiric Ocelot

Ce guide est testé avec ces versions de Plone:

  • 4.2.5

Paramètres

Choisissez le nom la future instance :

INSTANCE_NAME="zeocluster"

Installation

Déterminez le chemin de l'instance:

INSTALL_PATH="/var/lib/plone/${INSTANCE_NAME}"

Déterminez le chemin des journaux:

LOG_PATH="/var/log/plone/${INSTANCE_NAME}"

Déterminez le chemin des binaires:

BIN_PATH="/usr/local/Plone"

Obtenez le chemin de la racine des instances:

INSTANCES_ROOT_PATH="$(command dirname "${INSTALL_PATH}")"

Créez les dossiers:

command mkdir --parent "${INSTANCES_ROOT_PATH}"
command mkdir --parent "${LOG_PATH}"

Préparation de l'environnement

Installez la la version de libreadline adaptée au système:

if [ -z "$(command apt-cache search libreadline5-dev)" ]; then
  # For Ubuntu 11.10 Oneiric Ocelot and after
  command apt-get install libreadline-gplv2-dev
else
  command apt-get install libreadline5-dev
fi

Installez les logiciels nécessaires:

command apt-get install build-essential libssl-dev libxml2-dev libxslt1-dev \
    libbz2-dev zlib1g-dev python-distribute python-dev \
libjpeg62-dev python-imaging wv poppler-utils rsync

Note: si cela ne suffit pas, reportez vous à Ubuntu / Debian Package Installation.

Créez l'utilisateur système plone:

command adduser --system --group --shell "/bin/sh" \
    --no-create-home --home "${INSTANCES_ROOT_PATH}" "plone"

Mise en place de l'application

Détectez la dernière version de Plone:

SOURCE_URL=$(command wget "http://plone.org/download" \
--quiet --output-document=- \
| command grep --max-count=1 "UnifiedInstaller" \
| command sed -e 's/.*href="\([^"]*\)".*/\1/')
VERSION=$(command echo "${SOURCE_URL}" \
| command sed -e 's/.*Plone-\([^-]*\)-.*/\1/')
VERSION_MAJOR=$(echo ${VERSION} \
| /bin/sed -e 's/^\([0-9]*\.[0-9]*\)\..*$/\1/') VERSION_MINOR=$(echo ${VERSION} \
| /bin/sed -e 's/^\([0-9]*\.[0-9]*\.[0-9]*\)[^0-9].*$/\1/')

Téléchargez les sources:

command wget --no-check-certificate "${SOURCE_URL}" \
    --output-document="/tmp/Plone-UnifiedInstaller.tgz"

Décompressez l'archive:

command tar --directory="/tmp" -xzf "/tmp/Plone-UnifiedInstaller.tgz"

Placez-vous dans le dossier obtenu:

pushd "/tmp/Plone-${VERSION_MINOR}-UnifiedInstaller"

Si la version de Plone est 4.1.2, appliquez le patch désactivant SSLv2 (nécessaire à l'installation sur Ubuntu Oneiric Ocelot, et patch de sécurité recommandé):

if [ ${VERSION_MINOR} = '4.1.2' ]; then
command wget 'http://dev.plone.org/raw-attachment/ticket/12369/plone-4.1.2-ui-oneiric.patch' \
--output-document='/tmp/plone-4.1.2-ui-oneiric.patch'
command patch -p1 < '/tmp/plone-4.1.2-ui-oneiric.patch'
fi

Préparez les dossiers destinés à contenir l'installation :

command ln -s "${BIN_PATH}/buildout-cache" "${INSTANCES_ROOT_PATH}/buildout-cache"

Installez cluster ZEO. Un cluster ZEO facilite la répartition de charge, et peut profiter des processeurs multicoeurs:

command sh install.sh zeo \
    --target="${BIN_PATH}" \
    --instance="${INSTALL_PATH}"

Mémorisez l'identifiant et le mot de passe fournis à la fin du processus d'installation. Il s'agit du compte d'administration du serveur.

Mise en conformité avec la LSB

Modifiez l'emplacement des journaux selon les recommandations de la LSB:

command mv "${INSTALL_PATH}/var/zeoserver" "${LOG_PATH}"
command ln -s "${LOG_PATH}/zeoserver" "${INSTALL_PATH}/var/zeoserver"
command mv "${INSTALL_PATH}/var/client"{1,2} "${LOG_PATH}"
command ln -s "${LOG_PATH}/client"{1,2} "${INSTALL_PATH}/var/"

Configuration du système

Autorisez l'utilisateur système 'plone' à exécuter des commandes:

command usermod --shell='/bin/sh' 'plone'

Mettez en place une sauvegarde quotidienne et un pack hebdomadaire:

command echo "# Plone cron.d setup.
# daily backup.
15 1    * * *    plone    test -x '${INSTALL_PATH}/bin/backup' && ${INSTALL_PATH}/bin/backup --quiet
# weekly pack.
15 0    * * 7    plone    test -x '${INSTALL_PATH}/bin/zeopack' && ${INSTALL_PATH}/bin/zeopack" \
    > "/etc/cron.d/plone-${INSTANCE_NAME}"

Rechargez la configuration de cron:

/etc/init.d/cron reload

Installez le script init.d démarrant l'instance et configurez la rotation des journaux :

command wget "https://raw.github.com/biapy/howto.biapy.com/master/plone/plone-logrotate.d"\
    --no-check-certificate --output-document="/etc/logrotate.d/plone-${INSTANCE_NAME}"
command wget "https://raw.github.com/biapy/howto.biapy.com/master/plone/plone-default" \
    --no-check-certificate --output-document="/etc/default/plone-${INSTANCE_NAME}"
command wget "https://raw.github.com/biapy/howto.biapy.com/master/plone/plone-init.d" \
    --no-check-certificate --output-document="/etc/init.d/plone-${INSTANCE_NAME}"
command chmod +x "/etc/init.d/plone-${INSTANCE_NAME}"
command sed -i \
-e "s|%INSTANCE_NAME%|${INSTANCE_NAME}|g" \
-e "s|%INSTALL_PATH%|${INSTALL_PATH}|g" \
-e "s|%LOG_PATH%|${LOG_PATH}|g" \
"/etc/logrotate.d/plone-${INSTANCE_NAME}" \
 "/etc/default/plone-${INSTANCE_NAME}" \
"/etc/init.d/plone-${INSTANCE_NAME}"

Lancez l'instance au démarrage du système:

command update-rc.d "plone-${INSTANCE_NAME}" defaults

Démarrez l'instance:

/etc/init.d/plone-${INSTANCE_NAME} start

Fin de la configuration et premier accès au site Plone

Pour prévenir un problème de support JPEG avec Pillow, assurez-vous d'utiliser la version 1.7.8 de cette bibliothèque:

command sed -i -e 's/1\.7\.2/1.7.8/g' "${INSTALL_PATH}/buildout.cfg"

Après avoir ajouté les produits Plone choisis au fichier buildout.cfg, mettez à jour l'installation avec:

command pushd ${INSTALL_PATH}
command su plone -c "${INSTALL_PATH}/bin/buildout"
command popd

Redémarrez le serveur Zope:

/etc/init.d/plone-${INSTANCE_NAME} stop
/etc/init.d/plone-${INSTANCE_NAME} start

Les deux URL suivantes permettent d'accéder aux deux instances Zope installées:

http://localhost:8080/

http://localhost:8081/

Sauvegardes

Pour sauvegarder l'installation, je vous propose d'utiliser Backup Manager. Pour l'installer, vous pouvez suivre mon guide:

Installer et configurer Backup Manager sur Debian

Une fois Backup Manager installé, configurez la sauvegarde des fichiers de l'application:

command backup-manager-tools add "${INSTANCES_ROOT_PATH}"
command backup-manager-tools add "${BIN_PATH}"

Références

Ce livre peut vous aider:

Remerciements