пятница, 12 ноября 2010 г.

How to install Etherpad on Windows

Послушав, как здорово рассказывают ребята из Yandex про командную работу, и использование, для совместного планирования, Etherpad'а я решил его поставить на одной из своих тестовых машин.
Linux систем у меня в хозяйстве нет, потому ставить решил на виртуальную машину с Windows 2008 R2 (x64), на которой крутится еще куча всего.

Для начала нашел вот эту инструкцию и попытался выполнить ее. Но cтолкнулся с рядом трудностей, посему попытаюсь ее перевести и немного дополнить.

Если кратко то надо сделать следующее:
Поставить:
  • MySQL
  • mysql-connector-java-5.1
  • CygWin т.к. все файлы сборки заточены под posix команды
  • Java JDK (я ставил jdk1.6.0_22)
  • Scala, причем ставить надо не последнюю (на момент написания 2.8.0), а предыдущую - 2.7.7. В противном случае на этапе компиляции получите ошибку "error not found type byte"
  • Сам Etherpad, причем редакцию предназначенную именно для windows, вот отсюда.

После чего надо создать фолдер, не содержащий пробелы, например "C:\Prog". И сделать в него символические линки используя либо вот эту програмку, либо иной способ например Alt+F6 в FAR Manager.

В результате должна получится следующая структура каталогов:

  • С:\Prog\Java\jdk1.6.0_22
  • С:\Prog\MySQL\MySQL Server 5.1
  • С:\Prog\Scala
  • С:\Prog\mysql-connector-java-5.1.13-bin.jar

После этого надо создать вот такие вот переменные среды:

  • JAVA_HOME = С:\Prog\Java\jdk1.6.0_22
  • SCALA_HOME = С:\Prog\Scala
  • JAVA = С:\Prog\Java\jdk1.6.0_22\bin\java
  • SCALA = С:\Prog\Scala\bin\scala
  • MYSQL_CONNECTOR_JAR = С:\Prog\mysql-connector-java-5.1.13-bin.jar

А так же добавить вот эти пути к переменной среды PATH:

  • C:\CygWin\bin
  • C:\Prog\MySQL\MySQL Server 5.1\bin
  • C:\Prog\Scala\bin
  • C:\Prog\Java\jdk1.6.0_22\bin

Причем, крайне важно добавить путь C:\CygWin\bin в начало PATH!. В противном случае на этапе компиляции получим ошибку связанную с find. Т.к. вместо find из CygWin будет использоваться системный find, а он использует совершенно иной синтаксис.

После всего этого создаем базу в mysql для EtherPad:
Запускаем интерпретатор команд:
mysql -u root -p

И выполняем вот такие команды :
create database etherpad;
grant all privileges on etherpad.* to 'etherpad'@'localhost' identified by 'password';
quit

Ну и теперь запускаем cmd.exe
Делаем cd C:\etherpad-win\trunk\etherpad
И запускаем компиляцию bash bin\rebuildjar.sh

Если все сделано верно то компиляция завершится без ошибок.

И можно будет запустить сервис командой run-local.bat

После чего зайдите на http://localhost:9000 и насладитесь работающим Etherpad'ом.

Но если попытаться зайти на него снаружи по адресу http://myserver:9000 то получите сообщение в браузере invalid superdomain.

Для того, чтобы работать удаленно надо открыть файл C:\etherpad-win\trunk\etherpad\src\etherpad\globals.js и добавить в список доменов наш, например вот так:
var SUPERDOMAINS = {
'localbox.info': true,
'localhost': true,
'etherpad.com': true,
'myserver': true
};

После чего снова все пересобрать и на этот раз все должно заработать.

Надеюсь установка и настройка этого тула сможет способствовать улучшению коммуникаций в вашей команде.

Комментариев нет: