Сайт работает под MacOS, Unix (протестировано на Ubuntu, Debian), но не Windows. Сам код сайта написан более-менее универсально, но под Windows криво работают некоторые сторонние модули.
Нужна именно последняя версия IO.JS.
Если у вас Mac, то проще всего сделать это через MacPorts или Homebrew, чтобы было проще ставить дополнительные пакеты.
Если через MacPorts, то:
sudo port install mongodb
sudo port load mondogb
Предположу, что Git у вас уже стоит и вы умеете им пользоваться.
Клонируйте только ветку master
:
git clone -b master --single-branch https://github.com/iliakan/javascript-nodejs
Поставьте глобальные модули:
npm install -g mocha bunyan gulp nodemon
Для работы нужны Nginx, GraphicsMagick, ImageMagick (обычно используется GM, он лучше, но иногда IM).
sudo port install ImageMagick GraphicsMagick
sudo port install nginx +debug+gzip_static+realip
sudo port load nginx
Если в системе ранее не стоял nginx, то ставим настройки для сайта:
Например:
gulp config:nginx --prefix /opt/local/etc/nginx --root /js/javascript-nodejs --env development --clear
Здесь --prefix
-- место для конфигов nginx, обычно /etc/nginx
, в случае MacPorts это /opt/local/etc/nginx
.
В параметр --root
запишите место установки сайта.
Опция --clear
полностью удалит старые конфиги nginx.
Если уже есть nginx, то можно без --clear
. Тогда команда только скопирует файлы из директории nginx (с минимальной шаблонизацией) в указанную директорию.
Основные конфиги будут перезаписаны, но в sites-enabled
останутся и будут подключены и другие сайты.
Также рекомендуется в /etc/hosts
добавить строку:
127.0.0.1 javascript.in
Такое имя хоста стоит в конфигурации Nginx.
В директории, в которую клонировали, запустите:
npm install
Инициализуйте базу сайта командой:
gulp db:load --from fixture/init
Учебник находится в отдельном репозитарии:
git clone -b master --single-branch https://github.com/iliakan/javascript-tutorial
После клонирования импортируйте учебник командой:
gulp tutorial:import --root /js/javascript-tutorial
Здесь /js/javascript=tutorial
-- директория с репозитарием учебника.
Запуск сайта в режиме разработки:
./dev
Это поднимет сразу и сайт и механизмы автосборки стилей-скриптов и livereload.
Обратите внимание: ходить на сайт нужно через Nginx (обычно порт 80), не напрямую в IO.JS (не будет статики).
Если в /etc/hosts
есть строка 127.0.0.1 javascript.in
, то адрес будет http://javascript.in/
.
Если что-то не работает -- пишите issue.