Diferència entre revisions de la pàgina «Plone»

De Cacauet Wiki
Salta a la navegació Salta a la cerca
 
(Hi ha 10 revisions intermèdies del mateix usuari que no es mostren)
Línia 3: Línia 3:
 
* ZODB: base de dades orientada a objecte
 
* ZODB: base de dades orientada a objecte
  
 +
__TOC__
  
 
== Instal·lació en desenvolupament ==
 
== Instal·lació en desenvolupament ==
Necessitarem un virtualenv i '''instal·lar zopeskel''' del Pypi com s'indica a:
+
Abans s'utilitzava un esquelet del servidor d'aplicacions Zope anomenat [http://plone.org/products/zopeskel/ Zopeskel], però aquest mètode és obsolet.
* http://plone.org/products/zopeskel/
 
* http://developer.plone.org/getstarted/installation.html#installing-plone-using-buildout-on-ubuntu-debian
 
  
Llavors tindrem instal·lats els ''templates'' necessaris per crear un [[Buildout]] per a Plone. Segueix les instruccions per crear el projecte Plone amb la instrucció ''zopeskel''.
+
Ara s'utilitza [https://github.com/plone/bobtemplates.plone bob templates].
  
Un cop creat el projecte, el construim, com ja és habitual en un ''buildout'' amb:
+
Instal·lem [http://pip-python3.readthedocs.org/en/latest/installing.html pip installer] o bé actualitzem la darrera versió:
 +
sudo pip install -U pip
 +
Instal·lem virtualenv (o actualitzem darrera versió):
 +
sudo pip install -U virtualenv
 +
Creem un virtualenv (oju! SENSE sudo), normalment al nostre ''home directory'':
 +
virtualenv --no-site-packages --distribute ~/env
 +
Activem el virtualenv:
 +
source ~/env/bin/activate
 +
El ''prompt'' de Linux hauria d'indicar el nom de la carpeta, en el nostre cas
 +
(env) $
 +
Instal·lem els bobtemplates de Plone:
 +
pip install bobtemplates.plone
 +
Creem l'esquelet del projecte Plone (ha de tenir nom.cognom):
 +
mrbob -O plone.test1 bobtemplates:plone_addon
 +
Entrem a la carpeta i construïm el projecte (ull, que triga molt perquè ha de descarregar moltes llibreries):
 +
cd plone.test1
 +
python bootstrap-buildout.py
 +
bin/buildout
 +
 
 +
De vegades el ''bootstrap'' falla si es fa dins del virtualenv. Si fos el cas, desactivem-lo abans de fer el bootstrap:
 +
(env) $ cd plone.test1
 +
(env) $ deactivate
 +
$ python bootstrap-buildout.py
 
  $ bin/buildout
 
  $ bin/buildout
  
...potser caldrà instal·lar i resoldre algunes llibreries que manquen (via apt-get o easy_install).
+
És molt possible que doni errors perquè li falten llibreries. [https://plone.org/documentation/manual/installing-plone/installing-on-linux-unix-bsd/debian-libraries Mira aquest article i instal·la les llibreries del sistema] que et facin falta.
 +
 
 +
Finalment, podem arrencar Plone i demés amb:
 +
bin/instance start
 +
bin/instance stop
 +
bin/instance status
 +
 
 +
Pots començar a configurar la teva site plone a:
 +
http://localhost:8080
 +
 
 +
<br>
 +
 
 +
== Desplegament amb Apache ==
 +
Podeu posar en marxa Plone tal i com hem fet en desenvolupament, és a dir, fent que escolti al port 8080. Caldrà redireccionar un VirtualHost d'Apache cap al port 8080 per poder accedir des d'un domini, per exemple:
 +
http://plone.enric.com
 +
 
 +
Seguiu la [http://docs.plone.org/4/en/manage/deploying/front-end/apache.html documentació oficial de Plone pel desplegament amb Apache].
 +
 
 +
De fet, aquest sistema utilitza [http://docs.zope.org/zope2/zope2book/VirtualHosting.html VirtualHostMonster], un mòdul de Zope que realitza el reescrit de les URLs d'acord amb el domini necessari (plone.enric.com pel nostre cas). A Plone 4 ja ve instal·lat per defecte.
 +
 
 +
<br>
 +
 
 +
== Instal·lació amb Supervisor ==
 +
Podem instal·lar Plone de moltes maneres en un servidor:
 +
* Amb unified installer
 +
* Arrencant-ho manualment com hem fet en la secció de desenvolupament
 +
* Instal·lant-ho a l'arranc del sistema a init.d
 +
* Amb Apache2
 +
* Amb [http://supervisord.org/ Supervisor]: aquesta és la més senzilla i la que utilitzarem
 +
** Tutorial principal de Plone: http://developer.plone.org/reference_manuals/active/deployment/
 +
** En concret ens interessa: http://developer.plone.org/reference_manuals/active/deployment/processes.html#process-control-with-supervisor
 +
** Algunes pistes (tutorial) a: https://www.digitalocean.com/community/articles/how-to-install-and-manage-supervisor-on-ubuntu-and-debian-vps
 +
 
 +
En realitat és senzill si hem treballat amb un ''buildout''.
 +
# Instal·lar Plone amb ''buildout'' i configurar ports, etc. (mai fer buildout com a sudo, només quan l'arrenquem)
 +
# Instal·lem supervisor amb <pre>$ sudo apt-get install supervisor</pre>
 +
# Configurem <code>/etc/supervisor/supervisor.conf</code> d'acord amb el [http://developer.plone.org/reference_manuals/active/deployment/processes.html#process-control-with-supervisor link "process control with supervisor"].
 +
#* Afegim els paràmetres <code>autostart=true</code> i <code>autorestart=true</code>
 +
# Entrem a la consola de supervisor:<pre>$ sudo supervisorctl</pre>
 +
# Actualitzem supervisor: <pre>supervisor> update</pre>
 +
# Comprovem com va amb: <pre>supervisor> status</pre>
  
Finalment arrenquem la instància en mode ''foreground'' amb:
+
Per saber més de supervisor fem "help" en la consola de ''supervisorctl''.
$ bin/instance fg
 
  
 
<br>
 
<br>

Revisió de 19:36, 4 feb 2016

Plone és un CMS basat en Python i les tecnologies:

  • Zope: servidor d'aplicacions
  • ZODB: base de dades orientada a objecte

Instal·lació en desenvolupament[modifica]

Abans s'utilitzava un esquelet del servidor d'aplicacions Zope anomenat Zopeskel, però aquest mètode és obsolet.

Ara s'utilitza bob templates.

Instal·lem pip installer o bé actualitzem la darrera versió:

sudo pip install -U pip

Instal·lem virtualenv (o actualitzem darrera versió):

sudo pip install -U virtualenv

Creem un virtualenv (oju! SENSE sudo), normalment al nostre home directory:

virtualenv --no-site-packages --distribute ~/env

Activem el virtualenv:

source ~/env/bin/activate

El prompt de Linux hauria d'indicar el nom de la carpeta, en el nostre cas

(env) $

Instal·lem els bobtemplates de Plone:

pip install bobtemplates.plone

Creem l'esquelet del projecte Plone (ha de tenir nom.cognom):

mrbob -O plone.test1 bobtemplates:plone_addon

Entrem a la carpeta i construïm el projecte (ull, que triga molt perquè ha de descarregar moltes llibreries):

cd plone.test1
python bootstrap-buildout.py
bin/buildout

De vegades el bootstrap falla si es fa dins del virtualenv. Si fos el cas, desactivem-lo abans de fer el bootstrap:

(env) $ cd plone.test1
(env) $ deactivate
$ python bootstrap-buildout.py
$ bin/buildout

És molt possible que doni errors perquè li falten llibreries. Mira aquest article i instal·la les llibreries del sistema que et facin falta.

Finalment, podem arrencar Plone i demés amb:

bin/instance start
bin/instance stop
bin/instance status

Pots començar a configurar la teva site plone a:

http://localhost:8080


Desplegament amb Apache[modifica]

Podeu posar en marxa Plone tal i com hem fet en desenvolupament, és a dir, fent que escolti al port 8080. Caldrà redireccionar un VirtualHost d'Apache cap al port 8080 per poder accedir des d'un domini, per exemple:

http://plone.enric.com

Seguiu la documentació oficial de Plone pel desplegament amb Apache.

De fet, aquest sistema utilitza VirtualHostMonster, un mòdul de Zope que realitza el reescrit de les URLs d'acord amb el domini necessari (plone.enric.com pel nostre cas). A Plone 4 ja ve instal·lat per defecte.


Instal·lació amb Supervisor[modifica]

Podem instal·lar Plone de moltes maneres en un servidor:

En realitat és senzill si hem treballat amb un buildout.

  1. Instal·lar Plone amb buildout i configurar ports, etc. (mai fer buildout com a sudo, només quan l'arrenquem)
  2. Instal·lem supervisor amb
    $ sudo apt-get install supervisor
  3. Configurem /etc/supervisor/supervisor.conf d'acord amb el link "process control with supervisor".
    • Afegim els paràmetres autostart=true i autorestart=true
  4. Entrem a la consola de supervisor:
    $ sudo supervisorctl
  5. Actualitzem supervisor:
    supervisor> update
  6. Comprovem com va amb:
    supervisor> status

Per saber més de supervisor fem "help" en la consola de supervisorctl.


Referències[modifica]

Referències vàries: