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
Существует много способов автоматического запуска служб, обратитесь к документации операционной системы вашего сервера.

В Ubuntu и других операционках, использующих Upstart, это достигается за счёт:

где  содержит конфигурацию подобную 's :

В последних версиях Fedora и других операционках, использующих systemd, используйте файл от parsoid.service, подобный следующему шаблону (измените соответствующие пути файла):

Опциональная директива  выше может указывать путь к файлу, подобный следующему шаблону:

Вы также можете использовать PM2, чтобы запустить фоновый процесс server.js.

Установка с помощью :

Запуск server.js через PM2:

Сервер Parsoid теперь работает и управляется с помощью PM2. Сохраните список процессов:

Теперь, когда запускается PM2, сервер Parsoid будет запускаться и управляться с помощью PM2. Последний шаг - заставить PM2 автоматически запускаться при загрузке системы:

Для более старых релизов Ubuntu, которые используют, используйте это в качестве [platform] вместо 'ubuntu'.

См. баг 53723 для порядка упаковки, что позволит сделать общую установку проще.

Автоматический запуск на Mac OS X
На Mac OS X вы можете создать файл. В этом примере  называется   и сохраняется в. Скопируйте следующее содержимое в файл :

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)