Parsoid/Developer Setup/ru

Здесь описывается установка Parsoid из исходников. В первую очередь это полезно для разработчиков Parsoid, однако, если для вашей операционной системы нет скомпилированных пакетов Parsoid, вы также найдете это полезным.

Начальный этап
Чтобы использовать  в качестве конфигурационного файла:

См. для подробностей этапы "edit config.yaml" и "edit localsettings.js". См. the Gerrit 'getting started' docs для справки по "git review", что необходимо только в случае, если вы планируете поделиться изменениями кода с нами.

Если команды выше для вас непонятны, почитайте более подробные инструкции.

Убедитесь, что у вас самая последняя версия Node
Перед установкой Parsoid вы должны убедиться, что у вас установлена самая последняя версия Node.

Для Parsoid нужно node 0.8, но мы на самом деле рекомендуем версию 0.10 или выше. А в нашем производстве мы используем версию 0.10.

Если у вас установлен node достаточно свежей версии, следуйте инструкциям на, а затем возвращайтесь сюда.

Вариант 1. Клонировать репозиторий mediawiki/services/parsoid/deploy
Возможно, это самый простой способ установить Parsoid, если вы просто хотите немного поиграться и не связываться с установкой npm.

Это установит версию Parsoid, которая развернута на данный момент в произодстве наряду со всеми зависимыми элементами node. Код parsoid будет находиться в поддиректории src/. Модули npm будут находиться в поддиректории node_modules/.

Вариант 2. Клонировать репозиторий mediawiki/services/parsoid
Вы можете установить код Parsoid куда угодно, его не обязательно устанавливать или или запускать от пользователя root.

Проверка исходников:

Или, если вы планируете хакнуть Parsoid, следуйте документации the Gerrit 'getting started' и установите   в новое место. (Это также создаст подлинную копию с названием  в вашем репозитории.)

Проверка версии Node: наберите  (или   в Debian/Ubuntu) и это должно вывести   или. (Если выше, тоже подойдет.) Смотрите, если это не так.

Установите JS-зависимости. Запустите эту команду в директории Parsoid (содержащей package.json):

Настройка
Если вы хотите указать веб-службу Parsoid для своей wiki, зайдите в директорию  и отредактируйте файл. Используйте параметр, чтобы указать экземпляр(ы) MediaWiki, который(е) вы хотите использовать, как здесь:

Если вы хотите указать веб-службу Parsoid для своей wiki, используя файл, раскомментируйте в файле   путь   как здесь:

а также закомментируйте параметры,   и   как здесь:

перейдите в папку  и создайте файл   на основе файла. Используйте, чтобы указать экземпляр(ы) MediaWiki, который(е) вы хотите использовать, как здесь:

На данный момент Parsoid поддерживает публичные wiki, а также частные wiki, используя перенаправление cookie. (См. баг 67313, чтобы узнать хитрости как заставить это работать. Также посмотрите эту тему Обсуждения для обхода проблемы)

Потом вы сможете получить доступ к страницам Вики в Parsoid с указанием относительного URL

См. для более детальной информации.

Запуск сервера
Вам необходимо запустить веб-службу Parsoid из директории parsoid, используя:

а в Ubuntu 14.04 наберите вот это в директории :

Это запустит HTTP службу Parsoid, который по умолчанию в  будет слушать порт 8000. Чтобы его проверить, перейдите в браузере по адресу. Если вы настроили Parsoid правильно, то вы сможете просматривать страницы через. Учтите, что эта проверка может также закончиться неудачно в случае, если ваш хостинг-провайдер отключил порт 8000 для вашей учётной записи.

Две переменные окружения доступны для контроля назначенного интерфейса и/или порта:

export INTERFACE=127.0.0.1 export PORT=8142 nodejs bin/server.js

Автоматический запуск службы Parsoid
There are many ways to start services automatically, consult your server's operating system documentation.

On Ubuntu and other operating systems using Upstart, one approach is

where /etc/init/parsoid.conf contains configuration similar to MediaWiki-Vagrant's :

On recent versions of Fedora and other operating systems using systemd, use a parsoid.service unit file similar to the following template (modify the file paths as appropriate):

The optional  directive above can specify the path to a file similar to the following template:

You can also use PM2 to daemonize the server.js application.

Install using npm:

Start server.js through PM2:

The parsoid server is now running and managed by PM2. Save the process list:

Now whenever PM2 starts the parsoid server application will run and be managed by PM2. The final step is to have PM2 automatically start on system boot:

For later Ubuntu releases that use systemd use this as the [platform] rather than 'ubuntu'.

See bug 53723 for packaging plans that should make the general installation easier.

Automatically Starting on Mac OS X
On Mac OS X, you can create a plist. This example names the plist as org.mediawiki.parsoid.start.plist and saves it in /Library/LaunchDameons. Copy the following content to the org.mediawiki.parsoid.start.plist file:

Note: The "WorkingDirectory" path /Applications/Parsoid/parsoid/bin should be replaced with the path where your server.js is located. Also, make sure you make root the owner of this plist, i.e.:

Gentoo Linux, Funtoo Linux
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):

Windows setup
These steps are the same as the installation of Parsoid on Linux:

git clone https://gerrit.wikimedia.org/r/p/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 (without ..\) directly from the parsoid folder created byt 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. Install Git. We may be need to add into an environment variable PATH with the path to the program, e.g.:

C:\Git\bin

Parsoid converts wiki-text to HTML. It require Node.js to be installed. Download and install Node.js x86 MSI latest version. Also we need Python v.2.7.x. Download and install it. Add into an environment variable PATH with the path to the program, if the variable is not there:

C:\Python27\;C:\Python27\Scripts

Start Git CMD or BASH, and enter the code:

There must be no errors.

Now install Parsoid. Enter following lines in Git CMD or BASH:

These commands start Parsoid's files downloading in a folder path to which you can see in a CMD windows (from where you start Git console); jump to folder "parsoid"; and installing component. You may need to reboot your PC if the process of execution of last command hangs. After reboot run the last line.

Then, when everything is done well, copy the localsettings.js.example file to localsettings.js and the config.example.yaml file to config.yaml. Edit following line in those files:

It is url of you mediawiki api.php file, e.g.:

You may also to correct the other important for you lines in those files. To start Parsoid input the next command:

This will start parsoid in a local session, when the machine is restarted – it won’t run again. To run it automatically we need, for example, to create a CMD file with the following content:

here  - is your Parsoid folder. Then add to the windows Scheduler a task for starting this CMD file when computer starts, and check the task's parameters at your discretion.

It is written on the basis of Installing MediaWiki on Windows Server 2012 R2 Core with clarity.

Разрешение проблем
Если что-то всё ещё не работает, см. нашу страницу решения проблем.

См. также

 * Программа развертывания Parsoid в кластере Wikimedia
 * VisualEditor and Parsoid server installation from Git on Mac OSX (Ujjwal P)