Pull to refresh

Pow — легкий, быстрый, удобный

Reading time 2 min
Views 6.2K
Как много у вас приложений, сайтов, систем на Ruby, запускаемых под Rails и другие frameworks? Как часто вам приходится лезть в терминал и запускать приложения через 'rails s' и другие консольные команды? Это трата времени, сложность в управлении (в плане организации проектов). Как было бы хорошо, если бы все проекты были бы в одном месте и запускались по одному клику…

Я хочу рассказать вам про Pow. С одной стороны это простой Rack сервер для запуска ваших проектов, с другой стороны это очень удобный инструмент. Сервер разработан компанией 37signals. Единственная оговорка: сервер работает только под Mac OSX.

Как работает Pow?

Всё очень просто:
  1. В терминале вводите команду:
    curl get.pow.cx | sh
  2. После установки заходите в папку Pow:
    cd ~/.pow
    . Эта папка является ссылкой на ~/Library/Application Support/Pow/Hosts.
  3. Делаете ссылку на ваш проект:
    ln -s /path/to/myapp
  4. В браузере набираете myapp.dev


Собственно и вся установка. Теперь для добавления проектов достаточно в папке ~/.pow делать ссылки на ваши проекты. Все проекты запускаются с http://[название проекта].dev.

Сервер также имеет файл конфигурации ~/.powconfig, который находится в домашнем каталоге. Для примера, можно указать таймаут в 5 минут для завершения запущенного проекта: export POW_TIMEOUT=300. Более подробно о конфигурации сервера можно почитать здесь.

В чем приемущества Pow?

  • Не надо редактировать /etc/hosts для запуска проекта через доменное имя.
  • Не требует обслуживания. Pow простой, автономный сервер, который работает без root привилегий.
  • Для установки не надо компилирования или дополнительных гемов.
  • полная поддержка rbenv и Bundler.
  • На один проект можно делать несколько ссылок. Таким образом осуществляется поддержка субдоменов.
  • Запуск проектов с разным набором гемов и версией Ruby.


Есть ли графическая оснастка?

Не могу обойти стороной замечательную программу для Pow: Anvil for Mac. Это удобное дополнение позволяет в 2 шага добавить новый проект к Pow.

Что может Anvil for Mac?

  • Установка, Перезапуск, Удаление Pow.
  • Запуск, остановку сервера Pow.
  • Добавление, обновление, удаление ссылок на проекты.


Я бы даже рекомендовал сначала поставить Anvil for Mac, а затем из этой программы установить Pow.

UPD:

Хочу еще поделиться дополнительными инструментами по управлению сервером Pow.
Кроме упомянутого в комментарии a_vasyutin Powify также есть гем Powder. Это более простой инструмент управления чем Powify, но также умеет устанавливать сервер Pow, прилинковывать проекты, просматривать логи и т. д. Более подробно по командам можно почитать здесь: https://github.com/Rodreegez/powder#usage.

Также есть веб-обертка для Powder — Powser. Она позволяет перезапускать, делать редирект проекта прямо через браузер. После установки гема из папки проекта делаем ссылку на проект и запускаем Power:
powser start appname

Теперь, например, для перезапуска проекта достаточно в адресной строке браузера ввести: powser.dev/restart или powser.dev/restart?app=appname, где appname — любой прилинкованный проект. Более подробно про использование гема можно почитать здесь: https://github.com/phil-monroe/powser#powder-for-your-browser.

Дополнительные материалы

Tags:
Hubs:
+6
Comments 14
Comments Comments 14

Articles