Parsoid/Developer Setup/ca

Aquesta pàgina descriu la instal·lació de Parsoid des del codi font. Aquest article és principalment útil pels desenvolupadors de Parsoid, però si no hi ha paquets ja preparats de Parsoid pel vostre sistema operatiu, també podríeu trobar-lo útil.

Inici ràpid
Per compatibilitat enrere, i per continuar donant suport no-estàtic configs, $js pot ser configurat de la manera següent:

Vegeu per més detalls en el passos "edit config.yaml" I "edit localsettings.js". Vegeu the Gerrit 'getting started' docs per més ajuda amb "git review", el qual és l'únic necessari si teniu previst fer canvis en el codi i retornar-los-us.

Si en les ordres que es mostren més avall no els hi trobeu immediatament un sentit o utilitat, seguiu llegint per unes instruccions més detallades.

Assegureu-vos de tenir un node recent
Abans d'instal·lar Parsoid, hauríeu d'assegurar-vos que teniu una versió recent de node ja instal·lat.

Parsoid requereix el node v6.x o més recent, i en producció ja utilitzem v6.9.1.

Si no teniu un node prou nou instal·lat, seguiu les instruccions a i llavors torneu aquí.

Opció 1. Cloneu el repositori de mediawiki/services/parsoid/deploy
Aquesta és potser la manera més senzilla d'instal·lar Parsoid si només voleu provar-lo una mica i així no heu no heu de tractar d'instal·lar npm.

Aquesta instal·la la versió de Parsoid que està actualment desplegada en producció per a totes les dependències del node. El mateix codi parsoid estarà en el subdirectori src/. Els mòduls npm estaran en el subdirectori node_modules/.

Opció 2. Cloneu el repositori de mediawiki/services/parsoid
Podeu instal·lar el codi Parsoid a qualsevol lloc, no té perquè estar instal·lat o utilitzat com a usuari root.

Comproveu el codi font:

Or if you plan to hack Parsoid, follow the the Gerrit 'getting started' docs and set up  in your new checkout. (Aquest també crearà un remot autenticat anomenat  en el vostre repositori.)

Comproveu la vostra versió de node: tipus  (o   en Debian/Ubuntu) i podeu imprimir   o $ver2. (Més recent va bé, també) Vegeu si allò no va bé.

Instal·leu les dependències de JS.

Executeu aquesta ordre en el directori Parsoid (que conté ):

Configuració
Per tal de que el servei de web de Parsoid apunti al vostre propi wiki, aneu al directori  i editeu el fitxer.

Utilitzeu el paràmetre  per apuntar a la instància/-es de MediaWiki que voleu utilitzar així (però, a diferència del que es mostra, sense espais al davant de   i de  ):

Si voleu que el servei web Parsoid assenyali al vostre propi wiki utilitzant el fitxer  al fitxer   descomprimiu la ruta d'accés   d'aquesta manera:

i comenteu els paràmetres,   i   d'aquesta manera:

aneu al directori  i creeu un fitxer   basat en. Utilitzeu  per apuntar a la(-es) instància(-es) de MediaWiki que voleu utilitzar, d'aquesta manera:

Podeu accedir a les pàgines del vostre wiki a Parsoid amb la URL relativa '/yoursite.com/v3/page/html/&lt;page-title&gt;/'

Vegeu per més detalls.

Fent anar el servidor
Hauríeu de poder iniciar el servei web Parsoid des del directori parasoid usant:

i en ubuntu 14.04 escriviu això en el directori /parasoid.

Això farà iniciar el servei HTTP Parsoid, els valor predeterminats en localsettings.js en el port 8000. Per provar-ho, assenyaleu el vostre navegador a http://localhost:8000/. Si heu configurat Parsoid correctament, hauríeu de poder analitzar pàgines a través de. Tingueu en compte que aquesta prova també podria fracassar, en el cas que el vostre proveïdor d'allotjament (hosting) hagi desactivat el port 8000 del vostre compte.

Hi ha dues variables d'entorn disponibles per controlar l'enllaç a una interfície i/o port específics:

Iniciant el servei Parsoid automàticament
Hi ha moltes maneres d'iniciar serveis automàticament, consulteu la documentació del sistema operatiu del vostre servidor.

Upstart (Ubuntu)
En Ubuntu i altres sistemes operatius que utilitzin Upstart, un enfocament és

on < conté una configuració similar a 's :

To test your configuration type

If the answer is "syntax ok" you can start the service:

To check, if the service is running, type

And if you want to stop your node.js-parsoid-server you can do this with

You can find more helpful instructions to get node running as server with ubuntu in this article: The Upstart Event System: What It Is And How To Use It

Fedora
En versions recents de Fedora i altres sistemes operatius que utilitzen systemd, utilitzeu un fitxer d'unitat parsoïd.service semblant a la següent plantilla (modifiqueu les rutes del fitxer segons correspongui):

La directiva opcional  pot especificar la ruta d'accés a un fitxer similar a la següent plantilla:

També podeu utilitzar PM2 per daemonitzar l'aplicació server.js.

Instal·lació usant npm:

Fer iniciar server.js a través de PM2:

El servidor parsoid ja s'està executant i és gestionat per PM2. Desa la llista de processos:

Ara, cada vegada que s'iniciï PM2, l'aplicació del servidor parsoid s'executarà i serà gestionada per PM2. El pas final és que el PM2 comenci automàticament en l'arrencada del sistema:

Per les versions últimes d'Ubuntu que utilitzen systemd usen això com a [plataforma] en lloc de 'ubuntu'.

Vegeu bug T69313 per als plans d'empaquetat que faciliten la instal·lació general.

Iniciant automàticament en macOS
On macOS, you can create a plist. This is an example of a suitable plist (adapt the parsoid and config.yaml paths to your system):

Save it as org.mediawiki.parsoid.start.plist in /Library/LaunchDaemons and change to root user & wheel group, correct permissions, and add it as a persistent launchd job (so that it will restart on the next reboot).

Passenger
This is probably not recommended. If using passenger, make sure that num_workers in config.yaml is set to 0, otherwise it won't bind to passenger's socket properly.

Gentoo Linux, Funtoo Linux
Add a config.yaml file in the install location (/usr/lib64/node_modules/parsoid), see example file.

As an init.d file, supposing that node is installed in its default location and parsoid installed system-wide (npm install -g)

A better idea would be to run Parsoid without root permissions. Let's create unprivileged system account:

And our init.d script would change accordingly (assuming default locations, system-wide installation):

FreeBSD
startup script from https://www.reddit.com/r/freebsd/comments/4ft79b/best_practice_for_daemonizing_nodejs/d2earq1/

Configuració de Windows
These steps are the same as the installation of Parsoid on Linux:

git clone https://gerrit.wikimedia.org/r/mediawiki/services/parsoid cd parsoid npm install

If npm install fails due to npm being an unknown command, try to add the nodesjs folder to the PATH, as explained earlier in the Install prerequisite software section, and run npm install directly from the parsoid folder created by the git clone command.

If the installation fails again, you may try to disable your router firewall.

When the installation is complete, configure parsoid and run (server.js might be located in the folder bin\ and not in api\ in newer versions of Parsoid):

node bin\server.js

To run parsoid in the background, create a cmd file in the parsoid directory called parsoid.bat. Setup a scheduled task to run the task on startup. Alternatively several "run batch file as a service" commands exist on the internet.

@echo off "%ProgramFiles(x86)%\nodejs\node.exe" bin\server.js

When using the cmd file as scheduled task it might be required to use the full path to the server.js file (e.g. C:\www\parsoid\bin\server.js) instead of bin\server.js.

Git will fail to download if you have a corporate proxy to go through, so you need to do the following first;

git config --global -e

This will launch an editor now press i once in insert mode type;

[http] proxy = http://proxy.company.com:8080

Now finally press ESC and then type :wq and press enter to save changes. Proxy is now enabled.

Windows Server 2008 R2
MediaWiki must be installed, and an extension Visual Editor as well.

Troubleshooting
If things are still not working, then see our troubleshooting page.