A partir de Debian 12, Python 2 n'est plus supporté par Debian. Il va falloir l'installer manuellement avec pyenv :
Installation de Pyenv
a/ Installer les paquets systèmes requis :
sudo apt install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev python3-openssl
b/ Installer Pyenv en utilisant un script fourni par les mainteneurs du projet :
curl https://pyenv.run | bash
c/ Après l’installation, ajouter les lignes suivantes au fichier de configuration de shell (.bashrc) :
export PYENV_ROOT="$HOME/.pyenv"
[[ -d $PYENV_ROOT/bin ]] && export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init - bash)"
d/ vérifier que Pyenv est correctement installé en exécutant :
pyenv --version
Installer Python 2.7.15
pyenv install 2.7.15
Créer un dossier pour le projet Plone et définir la version de python à utiliser localement :
mkdir Plone
cd Plone
pyenv local 2.7.15
Cela crée un fichier .python-version dans le répertoire Plone, indiquant à Pyenv de basculer automatiquement vers la version spécifiée lorsque l'on travaille dans ce dossier.
Source : Installation instructions for Plone 4.3
Récupérer fichier d’install de la dernière version de Plone 4.3 sur https://launchpad.net/plone/+milestone/4.3.19 :
cd /home/zidol/download
wget --no-check-certificate https://launchpad.net/plone/4.3/4.3.19/+download/Plone-4.3.19-UnifiedInstaller.tgz
Extraire le fichier compressé :
tar -xf Plone-4.3.19-UnifiedInstaller.tgz
cd Plone-4.3.6-UnifiedInstaller
# utiliser python 2.7 en local dans ce répertoire
pyenv local 2.7.15
Lancer le script install :
./install.sh standalone --password=xxxxx --target=/home/ugvr/Plone --instance=ugvr
...
Plone successfully installed at /home/ugvr/Plone
See /home/ugvr/Plone/ugvr/README.html for startup instructions
Une fois Plone installé, déclarer python2.7 en local pour ce répertoire :
cd /Plone/ugvr
# utiliser python 2.7 en local dans ce répertoire
pyenv local 2.7.15
Tester Plone en le lançant :
bin/plonectl fg
instance: 2025-06-10 15:44:52 INFO ZServer HTTP server started at Tue Jun 10 15:44:52 2025
Hostname: 0.0.0.0
Port: 8090
...
2025-06-10 15:45:00 INFO Zope Ready to handle requests
Le dernier message "Zope ready to handle requests" annonce que l'instance Plone est opérationnel sur le port 8090.
Pour arrêter Plone, faire : CTRL-C
Créer, dans /etc/systemd/system, un fichier du service ayant comme nom ugvr.service :
[Unit]
Description=Plone website UGVR
After=network.target
[Service]
Type=forking
ExecStart=/home/ugvr/Plone/ugvr/bin/instance start
ExecStop=/home/ugvr/Plone/ugvr/bin/instance stop
ExecReload=/home/ugvr/plone/ugvr/bin/instance restart
[Install]
WantedBy=multi-user.target
Redémarrer systemd pour prendre en compte le nouveau fichier :
systemctl daemon-reload
Activer le service :
systemctl start ugvr.service
Pour démarrage de plone au boot du serveur :
systemctl enable ugvr.service
Copier la sauvegarde de ZIDOL du serveur de prod: cd /home/zidol/downloads scp phuoc@www.diendan.org:/home/phuoc/backups/ZIDOL_plone4315.tar.gz .
tar xvf ZIDOL_plone4315.tar.gz .
Ajouter les produits add-ons dans le buildout : cd /plone4/diendan nano buildout.cfg eggs = Plone Pillow plone.app.caching Products.RichDocument Products.Collage Products.PloneKeywordManager caotek.portlet.carousel caotek.zidol_theme collective.documentviewer == 4.0.14 collective.mathjax collective.quickupload medialog.portlet.donate sc.social.like ... zcml = caotek.portlet.carousel caotek.zidol_theme medialog.portlet.donate sc.social.like … develop = src/caotek.portlet.carousel src/caotek.zidol_theme src/medialog.portlet.donate Copier les fichiers sources des add-ons : cd src cp -r /home/zidol/downloads/ZIDOL_plone4315/diendan/src/caotek.portlet.carousel . cp -r /home/zidol/downloads/ZIDOL_plone4315/diendan/src/caotek.zidol_theme . cp -r /home/zidol/downloads/ZIDOL_plone4315/diendan/src/medialog.portlet.donate . . Copier les données backup de ZIDOL vers /plone4/diendan/var: cd ../var cp -r /home/zidol/downloads/ZIDOL_plone4315/diendan/var/blobstorage . cp -r /home/zidol/downloads/ZIDOL_plone4315/diendan/var/filestorage . chown -R plone_daemon:plone_group blobstorage chown -R plone_daemon:plone_group filestorage Changer le timezone de Plone en heure de Paris au lieu de GMT par défaut cd /plone4/diendan nano base.cfg environment-vars = zope_i18n_compile_mo_files true PYTHON_EGG_CACHE ${buildout:directory}/var/.python-eggs TZ Europe/Paris recompiler l’instance Plone cd /plone4/diendan bin/buildout si pas d’erreur, relancer et tester Plone cd /plone4/diendan bin/plonectl fg Configurer d’Apache et les certificats TLS pour fonctionner en HTTPS Configurer Apache en frontal de Plone Test avec Apache : http://vps.diendan.org -> OK Installer et configurer Let’s Encrypt pour pour obtenir les certificats SSL Test avec Apache : https://vps.diendan.org -> OK
Installer POSTFIX pour relayer les mails
apt install fail2ban
systemctl status postfix
Aller dans Webmin pour configurer : Cliquer sur Refresh Modules pour faire apparaître Postfix dans le groupe Servers Aller dans le module Servers/Postfix Mail Server Dans General Options, ajouter dans What domains to receive mail for le domaine de zidol $myhostname, diendan.org, localhost Aller dans Mail Aliases, puis cliquer sur Create a new alias Dans Address, saisir diendan Dans Alias to, sélectionner Email address, puis saisir diendanonline@gmail.com Cliquer sur Save pour enregistrer Avec cette configuration, pas besoin de définir des boîtes mail en local, ni de définir les comptes POP, pas besoin de les gérer. Il y a Google pour ça.
Publié le : 10-06-2025 - 16:19