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 вы можете создать файл. В этом примере  называется   и сохраняется в. Скопируйте следующее содержимое в файл :

Путь к "рабочей папке"  следует заменить на путь, где расположен ваш server.js. Также убедитесь, что у вы дали права root этому файлу, например:

Gentoo Linux, Funtoo Linux
Касательно файла, считая что Node установлен в папку по умолчанию, а Parsoid установлен общесистемно (npm install -g)

Лучшей идеей будет запустить Parsoid без прав root. Создадим непривилегированную системную учетную запись:

И наш скрипт  изменится  таким образом (предполагая каталоги по умолчанию, общесистемную установку):

Установка на Windows
Шаги те же самые, что и при установке Parsoid на Linux:

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

Если ..\npm install дает сбой, говоря, что npm неизвестная команда, попробуйте добавить каталог nodesjs\ в переменную среды PATH, как описывалось ранее в секции Установки необходимого ПО, и запустите npm install (без ..\) напрямую из папки parsoid, созданной командой.

Если установка снова не удается, можно попробовать отключить брандмауэр в маршрутизаторе.

Когда установка завершится, настройте Parsoid и запустите его (server.js должен быть расположен в папке, а не в   в более новых версиях Parsoid):

node bin\server.js

Чтобы запустить parsoid в фоне, создайте командный файл в папке Parsoid с названием. Создайте задачу в "планировщике" для ее запуска при загрузке. В качестве альтернативы в интернете существуют несколько команд "запуск командного файла как службу".

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

Если используется командный файл в качестве "назначенного задания", может потребоваться использовать полный путь к файлу server.js (например, C:\www\parsoid\bin\server.js) вместо.

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

git config --global -e

Это запустит редактор. Теперь нажмите i один раз, и в режиме вставки наберите:

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

И, наконец, нажмите ESC, а затем наберите :wq и нажмите Enter, чтобы сохранить изменения. Теперь прокси включен.

Windows Server 2008 R2
MediaWiki должен быть установлен, а также установлено расширение Visual Editor. Установить Git. При необходимости добавить в переменную среды PATH путь до программы, например:

C:\Git\bin

Parsoid преобразовывает wiki-текст в HTML. Для его работы потребуется Node.js. Скачиваем и устанавливаем последнюю версию пакета Node.js MSI x86. А также Python версии 2.7.x, который также скачиваем и устанавливаем. Добавляем в переменную среды PATH пути до программы, если они не прописались:

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

Запускаем Git CMD или BASH и выполняем команду:

Смотрим, чтобы не было ошибок при ее выполнении.

После этого выполняем установку Parsoid. Для этого в командной строке Git или BASH выполняем команду:

Эти команды запускают скачивание файлов Parsoid в текущий каталог, который указан в окне командной строки (из какого места запущена консоль Git); переход в каталог "parsoid"; и сама установка компонента. Если процесс выполнения последней команды висит, то надо перезагрузить машину. После перезагрузки запустите последнюю команду.

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)