Установка Phoenix на Windows

Возникла необходимость создания Веб сервиса с одно-страничными приложениями. Выбрал для этого React-Redux/JS, для фронтенда и Phoenix/Elexir (Erlang) для бэкенда. Для работы над проектом мне удобнее Win7*64. Опишу здесь процедуру установки примера найденного на Гитхабе, для которого на Хабре есть перевод подробного туториала.

https://github.com/bigardone/phoenix-trello

https://habrahabr.ru/post/308056/

В описаниях отсутствуют подробные рекомендации по настройкам окружения, поэтому восполню этот пробел данной статьёй. Ставлю всё на компьютер с недавно установленной Windows.

В первую очередь нам понадобится поставить Эрланг, что мы и сделаем скачав установщик с официального сайта www.erlang.org наиболее стабильная (по моим наблюдениям) версия OTP19.3 Windows 64-bit Binary File. Ни каких трудностей данный шаг не вызвал, достаточно только запустить установщик. Не забудьте отметить галочку на пункте Microsoft DLL’s (present), для того чтоб поставить библиотеку Си (возможно она у вас уже установлена). Потом можно запустить шелл и убедиться что Эрланг работает.

Аналогично с официального сайта ставится Elixir http://elexir-lang.org.ru на данный момент это версия 1.5.2, практически тут также трудностей не возникло, не забудьте проверить, что установщик настраивает переменные окружения.

Ставим NodeJS с сайта http://nodejs.org , для удобства я сразу поставил (глобально) npm -g install torch, заодно проверив, что это работает. Теперь можно создавать файлы из командной строки как в Lunix. Может вы не знаете, но можно запустить командную строку в любом каталоге из проводника, зажав шифт и вызвав контекстное меню правой кнопкой мыши. Впрочем энтузиастам командой строки будет наверное проще путешествовать по каталогам используя cd и вводя вручную название каталога и путь до него.

Ставим Git с сайта http://git-scm.com

В корне диска создаём рабочую папку для разных проектов и вызываем там командную строку. Набираем git clone и копируем сюда путь до репозитория на Гитхабе с проектом. Запускаем команду.

Для редактирования разных конфигов использую Notepad++ ставлю его с http://notepad-plus.org

Для Elexir/Erlang ставим более удобный Sublime Text 2 www.sublimetext.com/3 не забываем добавить его в контекстное меню. Далее устанавливаем в нём Package Control скачивая его от сюда http://packagecontrol.io закидывая в папку Installed Packages/ , путь до которой можно узнать Preferences>Browser Packages, потом надо перегрузить редактор.

Ставим по инструкции плагин для Elixir https://githab.com/smanolloff/SublimeLinter-contrib-elixir, настраиваем подсветку кода.

Ставим Постгрес www.bigsql.org/postgresql/installers.jsp временно указываем пароль postgres, конечно на боевом сервере ставить надо нормальный пароль и вписывать его в соответствующий файл конфигурации приложения.

Ставим pgAdmin4 www.postgresql.org/ftp/pgadmin3/pgadmin4/v1.3/windows/ подключаем локальный сервер и убеждаемся, что всё работает.

Переходим в созданный в ранее каталог: cd phoenix_trello запускаем там командную строку.

Ставим требуемое окружение для React-Redux: npm install. Так же надо запустить отдельно окно, под администратором и установить: npm -g install webpack.

Запускаем установку Phoenix и окружения для него: mix deps.get отвечаем да, на вопрос, об установке дополнительных пакетов.

Запускаем: mix ecto.create && mix ecto.migrate и тут начинаются трудности.

Для сборки библиотеки comeonin отключаем антивирус и также, под администратором, ставим программу от сюда https://chocolatey.org/install предварительно поставив 7zip если нет, а потом при её помощи ставим тулзу: choco install VisualCppBuildTools и идём пить чай.

Далее запускаем, через меню пуск командную строку студии и переходим в ней в папку проекта (путь можно скопировать в проводнике), повторяем: mix ecto.create && mix ecto.migrate

На сей раз всё, что надо собирается, а в pgAdmin4 мы увидим свежесозданную базу phoenix_trello_dev.

Создаём демо пользователя: mix run priv/repo/seeds.exs

В итоге запускаем сервер: mix phoenix.server и переходим по адресу http://localhost:4000

Если вам интересен функциональный язык программирования *Elixir* или вы просто сочувствующий то советую вам присоединиться к Telegram-чату  [Wunsh && Elixir](https://t.me/joinchat/AAAAAEII11x65Zz9-Y-daw).

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *