Pull to refresh

Comments 43

>Пробуем:
>#> asdlkjflaskdjf

#>/etc/rc.local && echo «ok»; sleep 30; iptables -F
#>ok
#>^C
UFO just landed and posted this here
UFO just landed and posted this here
Есть подозрение, что при неверных настройках фаервола соеденение будет закрыто и процессу bash будет отослана комманда HUP, что приведет к его остановке. Что бы этого не произошло, можно использовать комманду nohup, которая проигнорирует этот сиграл и bash завершит откат настроек.
Перестал использовать rvm в пользу более православного rbenv+ruby-build. А за статью спасибо.
не переопределяет shell команд, плюс возможность собирать руби со своими настройками
UFO just landed and posted this here
Потому что habrahabr.ru/blogs/ror/129583/
Не надо только рассказывать, что там Амазон, а тут просто про убунту — принципиальной разницы нет.
а, действительно неделя. раньше я думал, что они каждый месяц появляются.
Статей–то много, но когда нужно делать подобное самому, что всегда оказывается, что именно таких статей адово не хватает, поэтому я двумя руками «за» подобные руководства. Лишними уж точно не будут.
— Для разных проектов лучше использовать разных пользователей. Если уж разграничивать права, то нужно быть последовательным.
— Автор rvm рекомендует ставить его общесистемно, под рутом. В случае пользователя на проект это позволяет иметь всего одну копию rvm'а.
— Несмотря на рекомендацию ставить rvm так, как указано в статье (и на beginrescueend), лучше делать так:
curl -s rvm.beginrescueend.com/install/rvm -o rvm-installer; chmod +x rvm-installer; ./rvm-installer --version latest

Возможно, мне не везло, но мой опыт показывает, что HEAD, который ставится в противном случае, очень часто поломан. А вот latest — это последний стабильный релиз.
UFO just landed and posted this here
На каком уровне разграничивать? Добавить к nginx серверы приложений отдельные и их запускать под своими пользователями?

Можно использовать nginx только как прокси и для статики, а остальное отдавать отдельному юникорну. Это один вариант.
Но passenger тоже может менять владельца процесса: modrails.com/documentation/Users%20guide%20Nginx.html#PassengerUserSwitching
Если это разные пользователи, то можно изолировать папки проектов друг от друга просто выставлением прав.
For most purposes, the recommended installation method is Single-User.
Автор НЕ рекоммендует ставить rvm общесистемно. Пруфлинк.

Для деплоя разных проектов использовать разных пользователей? А то крутится-то это всё потом будет под пассажиром.
For most purposes, the recommended installation method is Single-User.

most — не all.
Автор НЕ рекоммендует ставить rvm общесистемно.

Рекомендовал долгое время. Теперь действительно уже не рекомендует, спасибо за информацию.
Для деплоя разных проектов использовать разных пользователей? А то крутится-то это всё потом будет под пассажиром.

habrahabr.ru/blogs/ror/129817/?reply_to=4299587#comment_4299132
Спасибо, интересная возможность. Я буду внимательнее читать обсуждения.
Перезагружаемся:
Дальше не читал.
UFO just landed and posted this here
Всё работает — хорошо. Добавляем свой ключ:
Тогда уж следует сразу отключить авторизацию по паролю, раз уж все равно по ключам ходите.
UFO just landed and posted this here
Спасибо! Сделаю ещё одну попытку использовать рельсы не только для прототипов — надеюсь под Debian также заработает или отличия от Ubuntu будут минимальны и очевидны (типа отсутствия sudo). Ещё бы продолжение к статье, как всё это дело грамотно обновлять, чтобы даунтайм был минимальный, а в идеале и вообще без него.
> отличия от Ubuntu будут минимальны и очевидны (типа отсутствия sudo)
apt-get install sudo
Мне кажется более простой метод настройка nginx
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
Это бесполезная статья. Лучше было опубликовать скрипт для бабушки, повара или пуштяна, и вкратце обьяснить то, что он делает.
DRY относится к развёртыванию ничуть не меньше, чем к коду.
А в чём тут нарушение DRY?
Вероятно имеется ввиду, то что это придется проделывать с каждым сервером как автору, так и тем кто решил воспользоваться его советами. А был бы рецепт, все стало бы намного проще.
По-моему, скриптик не сложно написатт, особенно если отбросить «вводную» часть.
UFO just landed and posted this here
sudo nano /etc/group

Лучше использовать комманду 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 при рестарте
Слишком много действий, не? Ну я хз конечно, я только под фрёй поднимал.
UFO just landed and posted this here
Не понятно как в данном случае делать деплой? Или руками скрипт писать? Для капистрано нужно будет еще пару тело движений делать.
Sign up to leave a comment.

Articles