Comments 43
>Пробуем:
>#> asdlkjflaskdjf
#>/etc/rc.local && echo «ok»; sleep 30; iptables -F
#>ok
#>^C
>#> asdlkjflaskdjf
#>/etc/rc.local && echo «ok»; sleep 30; iptables -F
#>ok
#>^C
Есть подозрение, что при неверных настройках фаервола соеденение будет закрыто и процессу bash будет отослана комманда HUP, что приведет к его остановке. Что бы этого не произошло, можно использовать комманду nohup, которая проигнорирует этот сиграл и bash завершит откат настроек.
Перестал использовать rvm в пользу более православного rbenv+ruby-build. А за статью спасибо.
Очень вовремя!
Неделя «Настроил RoR — напиши статью» на Хабре?
ИМХО статья habrahabr.ru/blogs/ror/120368/ — самая православная.
ИМХО статья habrahabr.ru/blogs/ror/120368/ — самая православная.
почему же неделя?..
Потому что habrahabr.ru/blogs/ror/129583/
Не надо только рассказывать, что там Амазон, а тут просто про убунту — принципиальной разницы нет.
Не надо только рассказывать, что там Амазон, а тут просто про убунту — принципиальной разницы нет.
Статей–то много, но когда нужно делать подобное самому, что всегда оказывается, что именно таких статей адово не хватает, поэтому я двумя руками «за» подобные руководства. Лишними уж точно не будут.
— Для разных проектов лучше использовать разных пользователей. Если уж разграничивать права, то нужно быть последовательным.
— Автор rvm рекомендует ставить его общесистемно, под рутом. В случае пользователя на проект это позволяет иметь всего одну копию rvm'а.
— Несмотря на рекомендацию ставить rvm так, как указано в статье (и на beginrescueend), лучше делать так:
Возможно, мне не везло, но мой опыт показывает, что HEAD, который ставится в противном случае, очень часто поломан. А вот latest — это последний стабильный релиз.
— Автор rvm рекомендует ставить его общесистемно, под рутом. В случае пользователя на проект это позволяет иметь всего одну копию rvm'а.
— Несмотря на рекомендацию ставить rvm так, как указано в статье (и на beginrescueend), лучше делать так:
curl -s rvm.beginrescueend.com/install/rvm -o rvm-installer; chmod +x rvm-installer; ./rvm-installer --version latest
Возможно, мне не везло, но мой опыт показывает, что HEAD, который ставится в противном случае, очень часто поломан. А вот latest — это последний стабильный релиз.
На каком уровне разграничивать? Добавить к nginx серверы приложений отдельные и их запускать под своими пользователями?
Можно использовать nginx только как прокси и для статики, а остальное отдавать отдельному юникорну. Это один вариант.
Но passenger тоже может менять владельца процесса: modrails.com/documentation/Users%20guide%20Nginx.html#PassengerUserSwitching
Если это разные пользователи, то можно изолировать папки проектов друг от друга просто выставлением прав.
For most purposes, the recommended installation method is Single-User.
most — не all.
Автор НЕ рекоммендует ставить rvm общесистемно.
Рекомендовал долгое время. Теперь действительно уже не рекомендует, спасибо за информацию.
Для деплоя разных проектов использовать разных пользователей? А то крутится-то это всё потом будет под пассажиром.
habrahabr.ru/blogs/ror/129817/?reply_to=4299587#comment_4299132
Перезагружаемся:
Дальше не читал.
Дальше не читал.
Всё работает — хорошо. Добавляем свой ключ:
Тогда уж следует сразу отключить авторизацию по паролю, раз уж все равно по ключам ходите.
Тогда уж следует сразу отключить авторизацию по паролю, раз уж все равно по ключам ходите.
Спасибо! Сделаю ещё одну попытку использовать рельсы не только для прототипов — надеюсь под Debian также заработает или отличия от Ubuntu будут минимальны и очевидны (типа отсутствия sudo). Ещё бы продолжение к статье, как всё это дело грамотно обновлять, чтобы даунтайм был минимальный, а в идеале и вообще без него.
Мне кажется более простой метод настройка nginx
Редактируем nginx-X.X.X/debian/rules
После этого у вас правильная дебка nginx которую можно просто ставить через dpkg -i
gem install passenger cd `passenger-config --root`/ext/nginx && rake nginx sudo add-apt-repository ppa:nginx/stable sudo sed -i 's/^deb/deb-src/g' /etc/apt/sources.list.d/nginx-stable-lucid.list sudo apt-get update && mkdir source && cd source && apt-get source nginx
Редактируем nginx-X.X.X/debian/rules
--add-module=$(shell passenger-config --root)/ext/nginx \
apt-get install build-dep nginx dpkg-buildpackage
После этого у вас правильная дебка nginx которую можно просто ставить через dpkg -i
sudo nano /etc/group
Лучше использовать комманду usermod:
По фэн-шую можно сохранить конфигурацию в отдельный файл...
Да, лучше использовать iptables-save и iptables-restore.
Лучше использовать комманду usermod:
# usermod -G `id -nG | sed -e 's/ /,/g' -e 's/sudo,//g'` deployer
По фэн-шую можно сохранить конфигурацию в отдельный файл...
Да, лучше использовать iptables-save и iptables-restore.
Интересно, а где автор взял «чистую» Ubuntu? По-умолчанию, с системой ставится куча всякого софта, который не всегда нужен.
Ubuntu server + в начале установки указываете «minimal бла-бла-бла».
Это какой, например? Вы, надеюсь, про серверную?
Также удобно создать в корне проекта файл .rvmrc, примерно такой:
_RUBY=ruby-1.9.2-p290
_PROJECT=my-project
export rvm_gem_options="--no-rdoc --no-ri"
if [[ -s "${rvm_path:-$HOME/.rvm}/environments/$_RUBY@$_PROJECT" ]]
then
. "${rvm_path:-$HOME/.rvm}/environments/$_RUBY@$_PROJECT"
else
rvm --create use "$_RUBY@$_PROJECT"
gem install bundler $rvm_gem_options
fi
# check for and install missing gems
[ -s Gemfile ] && bundle check || bundle install</code>
помогите на centos сделать автозапуск nginx при рестарте
Слишком много действий, не? Ну я хз конечно, я только под фрёй поднимал.
Не понятно как в данном случае делать деплой? Или руками скрипт писать? Для капистрано нужно будет еще пару тело движений делать.
Sign up to leave a comment.
Разворачиваем приложение на чистой Убунте: от A до Z