Diferència entre revisions de la pàgina «Instal·lació de Plone. Base de dades ZODB»

De wikijoan
Salta a la navegació Salta a la cerca
Línia 1: Línia 1:
 
=Introducció=
 
=Introducció=
És un CMS de propòsit general que utiltiza Python com a backend i ZODB com a base de dades (una base de dades no-sql orientada a objectes)
+
És un CMS de propòsit general que utiltiza Python com a backend i ZODB com a base de dades (una base de dades no-sql que utilitza objectes Pyhton)
  
 
===Referències===
 
===Referències===
Línia 20: Línia 20:
 
Requeriments mínims:
 
Requeriments mínims:
 
*https://docs.plone.org/manage/installing/requirements.html
 
*https://docs.plone.org/manage/installing/requirements.html
 +
Tenim un script d'instal·lació:
 
<pre>
 
<pre>
 
cd /home/joan/M09_IAW_2021/UF2/Plone-5.2.4-UnifiedInstaller-1.0/
 
cd /home/joan/M09_IAW_2021/UF2/Plone-5.2.4-UnifiedInstaller-1.0/
 
./install.sh
 
./install.sh
 
</pre>
 
</pre>
s'instal·larà a /home/joan/Plone
+
s'instal·larà a /home/joan/Plone. En el procés d'instal·lació protesta si no complim els requeriments:
 +
<pre>
 +
Testing /usr/bin/python3.8 for Zope/Plone requirements....                  │
 +
/usr/bin/python3.8 looks OK. We will use it.                                │
 +
│                                                                            │
 +
Unable to find libjpeg library and headers. These are required to build Plone. Please use your system package or port manager to install libjpeg dev. (Debian/Ubuntu libjpeg-dev) Exiting now. 
 +
</pre>
 +
I ens està dient que ens falta una llibreria (necessària per a poder manipular imatges). Instal·lem el paqet Debian de la llibreria:
 +
<pre>
 +
$ sudo apt-get install libjpeg-dev
 +
</pre>
 +
<pre>
 +
./install.sh
 +
...
 +
Unable to find libxml2 development libraries.
 +
 
 +
Plone installation requires the development versions of libxml2 and libxslt.
 +
libxml2 must be version 2.7.8 or greater\; libxslt must be 1.1.26 or greater.
 +
Ideally, you should install these as dev package libraries before running install.sh.
 +
</pre>
 +
Tornem a necessitar unes altres llibreries, en aquest cas relacionades amb XML:
 +
<pre>
 +
$ libxml2-dev - Development files for the GNOME XML library
 +
$ libxslt1-dev - XSLT 1.0 processing library - development kit
 +
 
 +
sudo apt-get install libxml2-dev libxslt1-dev
 +
</pre>
 +
I ara ja podem continuar:
 +
<pre>
 +
./install.sh
 +
...
 +
######################  Installation Complete  ######################
 +
 
 +
Plone successfully installed at /home/joan/Plone
 +
See /home/joan/Plone/zinstance/README.html
 +
for startup instructions.
 +
 
 +
Use the account information below to log into the Zope Management Interface
 +
The account has full 'Manager' privileges.
 +
 
 +
  Username: admin
 +
  Password: nTfSJDQUP0fq
 +
 
 +
This account is created when the object database is initialized. If you change
 +
the password later (which you should!), you'll need to use the new password.
 +
 
 +
Use this account only to create Plone sites and initial users. Do not use it
 +
for routine login or maintenance.- If you need help, ask in our forum https://community.plone.org - Live chat channels also exists at http://plone.org/support/chat - Submit feedback and report errors at https://github.com/plone/Products.CMFPlone/issues (For install problems, https://github.com/plone/Installers-UnifiedInstaller/issues)
 +
</pre>
 +
Per arrencar el Plone farem:
 +
<pre>
 +
$ cd ~/Plone/zinstance
 +
$ bin/plonectl fg
 +
...
 +
Starting server in PID 13587.
 +
Serving on http://0.0.0.0:8080
 +
</pre>
 +
I per tant podrem accedir al Plone des del navegador web, pel port 8080:
 +
*http://localhost:8080
 +
 
 +
By default, Plone will listen to port 8080 on available network interfaces. The port may be changed by editing buildout.cfg and re-running buildout.
 +
==Utilitzar Plone==
 +
La idea és accedir al Plone, logar-te amb el login i password que se t'ha proporcionat, i crear una mica de contingut. La primera vegada despista una mica, però quan et logues veuràs que a la zona de l'esquerre hi ha la zona d'administració, i des d'allà podràs crear per exemple dues ''notícies''.
 +
 
 +
A Plone podem crear aquest tipus de continguts: Carpeta, col·lecció, enllaç, esdeveniment, fitxer, imatge, notícia, pàgina.
 +
 
 +
Sabent crear i editar tots aquests tipus de continguts, es pot fer un CMS a la mida del que necessites, com ho demostra tota la gent que és partidària de Plone.
  
 
==Base de dades ZODB==
 
==Base de dades ZODB==
 
*https://docs.plone.org/4/en/develop/plone/persistency/database.html
 
*https://docs.plone.org/4/en/develop/plone/persistency/database.html
 +
La informació de Plone es guarda en una base de dades ZODB, que està a la carpeta ''var/filestorage/'' dins de ''/home/joan/Plone/zinstance''.
 +
<pre>
 +
Usually Plone's database is configured to file var/filestorage/Data.fs and uploaded files can be found as BLOBs in var/blobstorage.
 +
</pre>
 +
Per tant, anem a cercar aquest fitxer, i que conté la informació (els bytes) que hem introduït en la Notícia que hem creat''. Només cal utilitzar la comanda ''cat'' (o també podem utilitzar ''find'' per cercar una paraula dins del fitxer):
 +
<pre>
 +
$ cd ~/Plone/zinstance/var/filestorage
 +
$ cat Data.fs
 +
...
 +
<a title="Modifica la secció: Les quatre grans cròniques" href="https://ca.wikipedia.org/w/index.php?title=Les_quatre_grans_Cr%C3%B2niques&amp;action=edit&amp;section=1">modifica</a><span class="mw-editsection-bracket">]</span></span></h2>
 +
<p>Les quatre grans cròniques són:</p>
 +
...
 +
</pre>
 +
<pre>
 +
$ find . -type f -print | xargs egrep -i "Cerimoniós"
 +
Hi ha coincidències en el fitxer binari ./Data.fs.tmp
 +
Hi ha coincidències en el fitxer binari ./Data.fs
 +
</pre>
 +
''find'' troba que hi ha coincidències, però com que és un fitxer binari en comptes de text pla, no les troba.
  
 
=Entrega=
 
=Entrega=

Revisió del 14:59, 22 abr 2021

Introducció

És un CMS de propòsit general que utiltiza Python com a backend i ZODB com a base de dades (una base de dades no-sql que utilitza objectes Pyhton)

Referències

Desenvolupament

Instal·lació

demo que es restaura cada 4 hores: https://demo.plone.org/es

Instal·lació:

Descarreguem:

Escollim l'opció: unified installer tarball (all platforms)

Requeriments mínims:

Tenim un script d'instal·lació:

cd /home/joan/M09_IAW_2021/UF2/Plone-5.2.4-UnifiedInstaller-1.0/
./install.sh

s'instal·larà a /home/joan/Plone. En el procés d'instal·lació protesta si no complim els requeriments:

Testing /usr/bin/python3.8 for Zope/Plone requirements....                   │
/usr/bin/python3.8 looks OK. We will use it.                                 │
│                                                                            │
Unable to find libjpeg library and headers. These are required to build Plone. Please use your system package or port manager to install libjpeg dev. (Debian/Ubuntu libjpeg-dev) Exiting now.  

I ens està dient que ens falta una llibreria (necessària per a poder manipular imatges). Instal·lem el paqet Debian de la llibreria:

$ sudo apt-get install libjpeg-dev
./install.sh
...
Unable to find libxml2 development libraries.

Plone installation requires the development versions of libxml2 and libxslt.
libxml2 must be version 2.7.8 or greater\; libxslt must be 1.1.26 or greater.
Ideally, you should install these as dev package libraries before running install.sh.

Tornem a necessitar unes altres llibreries, en aquest cas relacionades amb XML:

$ libxml2-dev - Development files for the GNOME XML library
$ libxslt1-dev - XSLT 1.0 processing library - development kit

sudo apt-get install libxml2-dev libxslt1-dev

I ara ja podem continuar:

./install.sh
...
######################  Installation Complete  ######################

Plone successfully installed at /home/joan/Plone
See /home/joan/Plone/zinstance/README.html
for startup instructions.

Use the account information below to log into the Zope Management Interface
The account has full 'Manager' privileges.

  Username: admin
  Password: nTfSJDQUP0fq

This account is created when the object database is initialized. If you change
the password later (which you should!), you'll need to use the new password.

Use this account only to create Plone sites and initial users. Do not use it
for routine login or maintenance.- If you need help, ask in our forum https://community.plone.org - Live chat channels also exists at http://plone.org/support/chat - Submit feedback and report errors at https://github.com/plone/Products.CMFPlone/issues (For install problems, https://github.com/plone/Installers-UnifiedInstaller/issues)

Per arrencar el Plone farem:

$ cd ~/Plone/zinstance
$ bin/plonectl fg
...
Starting server in PID 13587.
Serving on http://0.0.0.0:8080

I per tant podrem accedir al Plone des del navegador web, pel port 8080:

By default, Plone will listen to port 8080 on available network interfaces. The port may be changed by editing buildout.cfg and re-running buildout.

Utilitzar Plone

La idea és accedir al Plone, logar-te amb el login i password que se t'ha proporcionat, i crear una mica de contingut. La primera vegada despista una mica, però quan et logues veuràs que a la zona de l'esquerre hi ha la zona d'administració, i des d'allà podràs crear per exemple dues notícies.

A Plone podem crear aquest tipus de continguts: Carpeta, col·lecció, enllaç, esdeveniment, fitxer, imatge, notícia, pàgina.

Sabent crear i editar tots aquests tipus de continguts, es pot fer un CMS a la mida del que necessites, com ho demostra tota la gent que és partidària de Plone.

Base de dades ZODB

La informació de Plone es guarda en una base de dades ZODB, que està a la carpeta var/filestorage/ dins de /home/joan/Plone/zinstance.

Usually Plone's database is configured to file var/filestorage/Data.fs and uploaded files can be found as BLOBs in var/blobstorage.

Per tant, anem a cercar aquest fitxer, i que conté la informació (els bytes) que hem introduït en la Notícia que hem creat. Només cal utilitzar la comanda cat (o també podem utilitzar find per cercar una paraula dins del fitxer):

$ cd ~/Plone/zinstance/var/filestorage
$ cat Data.fs
...
<a title="Modifica la secció: Les quatre grans cròniques" href="https://ca.wikipedia.org/w/index.php?title=Les_quatre_grans_Cr%C3%B2niques&action=edit&section=1">modifica</a><span class="mw-editsection-bracket">]</span></span></h2>
<p>Les quatre grans cròniques són:</p>
...
$ find . -type f -print | xargs egrep -i "Cerimoniós"
Hi ha coincidències en el fitxer binari ./Data.fs.tmp
Hi ha coincidències en el fitxer binari ./Data.fs

find troba que hi ha coincidències, però com que és un fitxer binari en comptes de text pla, no les troba.

Entrega

Entregaràs la pràctica al Classroom. Has de demostrar que has realitzat els exercicis proposats a classe, com a mínim. Però, com sempre, hauries d'anar més enllà i explorar el CMS Plone i les possibilitats que té de configuració.


creat per Joan Quintana Compte, abril 2021