nginx + unicorn

1 528 просмотров
Перейти к первому непрочитанному сообщению

Igor Kasyanchuk

не прочитано,
14 апр. 2011 г., 06:02:5214.04.2011
– RubyOnRails to russian
Привет

Хочу попробовать связку nginx + unicorn, может кто-то может поделится
конфигами (для проекта на vps)
nginx.conf
deploy.rb
и может еще какие-то надо?
?

Спасибо

Akzhan Abdulin

не прочитано,
14 апр. 2011 г., 06:11:1414.04.2011
– ror...@googlegroups.com, Igor Kasyanchuk
Ну, к примеру
nginx:

server {
  listen 80;
  server_name _;

  upstream app_server {
server 127.0.0.1:8080 fail_timeout=0;
}

  charset utf-8;

  error_log /var/log/nginx/me-error.log;
  access_log /var/log/nginx/me.log;

  root /var/www/face/current/public/;

  client_max_body_size 100m;

  location / {
    try_files $uri @unicorn;
  }
  
  location @unicorn {
    proxy_pass http://app_server;
    proxy_set_header       Host            $host;
    proxy_set_header       X-Real-IP       $remote_addr;
    proxy_set_header       Client-IP       $remote_addr;
    proxy_set_header       X-Forwarded-For $remote_addr;
    proxy_redirect         off;
  }
}



14 апреля 2011 г. 14:02 пользователь Igor Kasyanchuk <igorkas...@gmail.com> написал:
--
--
Данное сообщение отправлено Вам, так как Вы являетесь подписчиком группы "RubyOnRails to russian" на группах Google.
FAQ группы находится по адресу: http://ru.wikibooks.org/wiki/RubyFAQ

 Для того, чтобы отправить сообщение в эту группу, пошлите его по адресу
ror...@googlegroups.com
 Чтобы отменить подписку на эту группу, отправьте сообщение по адресу: ror2ru-un...@googlegroups.com
 Дополнительные варианты находятся на странице группы http://groups.google.com/group/ror2ru?hl=ru

Yury Korolev

не прочитано,
14 апр. 2011 г., 06:18:3314.04.2011
– ror...@googlegroups.com

Akzhan Abdulin

не прочитано,
14 апр. 2011 г., 06:20:4414.04.2011
– ror...@googlegroups.com, Igor Kasyanchuk
Предположим, что приложение деплоим с помощью Capistrano в виде сервисов runit.
На целевой тачке используем system-wide RVM, приложение использует Bundler.
deploy.rb


$LOAD_PATH.unshift(File.expand_path('./lib', ENV['rvm_path']))
require "rvm/capistrano"
require 'bundler/capistrano'

set :application, "face"
set :repository,  "git://git.company.ru/projects/face.git"
set :scm, :git
set :branch, "master"
set :deploy_via, :remote_cache
set :git_enable_submodules, 1
set :use_sudo, false
set :rvm_ruby_string, 'ree-1.8.7-2010.02@face'
set :rails_env, "production"
set :user, 'face'
set :deploy_to, "/var/www/face"

host = "face.local"

role :app, host
role :web, host
role :db,  host, :primary => true

after 'deploy:update_code', 'config:symlink_app_config'

namespace :deploy do
 task :start do
    run "sudo /usr/bin/sv up #{application}"
  end
  task :stop do
    run "sudo /usr/bin/sv down #{application}"
  end
  task :restart do
    run "sudo /usr/bin/sv hup #{application}"
  end
end

namespace :config do
  task :symlink_app_config do
    run "ln -sf #{current_release}/config/unicorn.rb.#{rails_env} #{current_release}/config/unicorn.rb"
  end
end

14 апреля 2011 г. 14:11 пользователь Akzhan Abdulin <akzhan....@gmail.com> написал:
Ну, к примеру
nginx:

Akzhan Abdulin

не прочитано,
14 апр. 2011 г., 06:29:4314.04.2011
– ror...@googlegroups.com, Igor Kasyanchuk
Обратите внимание на настройку rvn_ruby_string.

На целевой машине должен быть установлен system-wide RVM, в него инсталлирован указанный ruby (ree-1.8.7-2010.02), и создан указанный gemset (face).

2011/4/14 Akzhan Abdulin <akzhan....@gmail.com>
set :rvm_ruby_string, 'ree-1.8.7-2010.02@face'

Igor Kasyanchuk

не прочитано,
14 апр. 2011 г., 06:30:1014.04.2011
– RubyOnRails to russian
спасибо буду пробовать,

а насколько он дает прирост производительности? например сейчас
использую nginx (passenger) и вроде все быстро работает.

искал бенчмарки, но нашел только старые статьи, плюс в бенчмарках
проекты ведь "не реальные". ваши очущения какие?

> akzhan.abdu...@gmail.com> написал:
>
>
>
>
>
>
>
> > Ну, к примеру
> > nginx:

Akzhan Abdulin

не прочитано,
14 апр. 2011 г., 06:33:1014.04.2011
– ror...@googlegroups.com, Igor Kasyanchuk
У нас эта связка используется из соображений стабильности, а не производительности.
Боюсь, у нас даже бенчмарков не производили.

14 апреля 2011 г. 14:30 пользователь Igor Kasyanchuk <igorkas...@gmail.com> написал:

--

Alex L. Demidov

не прочитано,
14 апр. 2011 г., 08:52:0714.04.2011
– ror...@googlegroups.com
On Thu, Apr 14, 2011 at 02:11:14PM +0400, Akzhan Abdulin wrote:
> Ну, к примеру
> nginx:
>
> server {
> listen 80;
> server_name _;

Не нужно разрешать nginx'у обрабатывать запросы с любым Host: без
нужды, поэтому здесь лучше непосредственно прописать имя сервера.

>
> upstream app_server {
> server 127.0.0.1:8080 fail_timeout=0;

Во-первых, локальный unicorn лучше все-таки пускать через unix-сокет
Во-вторых, fail_timeout в случае только одного upstream server
игнорируется.

> }
>
> charset utf-8;
>
> error_log /var/log/nginx/me-error.log;
> access_log /var/log/nginx/me.log;
>
> root /var/www/face/current/public/;
>
> client_max_body_size 100m;

Вот это может позволить уложить среднюю VPS, а upload файлов в
100 MB нужен не каждому.

>
> location / {
> try_files $uri @unicorn;
> }
>
> location @unicorn {
> proxy_pass http://app_server;
> proxy_set_header Host $host;

При server_name _ и отсутствующем в запросе заголовке Host: могут
получиться интересные эффекты.

> proxy_set_header X-Real-IP $remote_addr;

> proxy_set_header Client-IP $remote_addr;

Нестандартные HTTP заголовки должны начинаться с X-

> proxy_set_header X-Forwarded-For $remote_addr;

Это портит оригинальный заголовок X-Forwarded-For. Здесь надо
использовать переменную $proxy_add_x_forwarded_for.

> proxy_redirect off;
> }
> }
>
>
>
> 14 апреля 2011 г. 14:02 пользователь Igor Kasyanchuk <
> igorkas...@gmail.com> написал:
>
> > Привет
> >
> > Хочу попробовать связку nginx + unicorn, может кто-то может поделится
> > конфигами (для проекта на vps)
> > nginx.conf
> > deploy.rb
> > и может еще какие-то надо?
> > ?
> >
> > Спасибо
> >

--
Alex L. Demidov (ALD9-RIPE).
http://alexeydemidov.com/
Freelance Consulting.

Akzhan Abdulin

не прочитано,
14 апр. 2011 г., 09:46:4614.04.2011
– ror...@googlegroups.com, Alex L. Demidov
Спасибо за поправки по существу. Имя _ было использовано, чтобы не писать example.com :)

Касательно использования unix sockets вместо tcp - все возможно, просто нам удобнее все через tcp, так проще с мониторингом и пробниками.

Остальное все верно :)

14 апреля 2011 г. 16:52 пользователь Alex L. Demidov <alexey...@gmail.com> написал:

--

Akzhan Abdulin

не прочитано,
15 апр. 2011 г., 06:45:5315.04.2011
– ror...@googlegroups.com, Alex L. Demidov
да, забыл еще показать runit run-script для сайта:
run:

3639bce908ec40f119928d94b04958f02ec19ee9
Author: Akzhan Abdulin <akzhan....@gmail.com>
Date:   Thu Apr 14 18:39:04 2011 +0400

    Automate gemspec

commit 8e4caf6e6c3032a54e0497fe6cf2452d5df58428
Author: Akzhan Abdulin <akzhan....@gmail.com>
Date:   Wed Apr 6 19:52:56 2011 +0400

    Useless file now
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git cherry-pick 8e4caf6e6c3032a54e0497fe6cf2452d5df58428
[master b7f8a0a] Useless file now
 1 files changed, 0 insertions(+), 5 deletions(-)
 delete mode 100644 .document
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git cherry-pick 3639bce908ec40f119928d94b04958f02ec19ee9
error: could not apply 3639bce... Automate gemspec
hint: after resolving the conflicts, mark the corrected paths
hint: with 'git add <paths>' or 'git rm <paths>'
hint: and commit the result with 'git commit -c 3639bce'
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git push
Counting objects: 3, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (2/2), 238 bytes, done.
Total 2 (delta 1), reused 0 (delta 0)
To g...@github.com:akzhan/git-commit-notifier.git
   d8d1a43..b6c9730  bitboxer -> bitboxer
   c403b3d..b7f8a0a  master -> master
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ cd ..Mac-mini-Akzhan-Abdulin:~ akzhanabdulin$ cd git-commit-notifier
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git reset --hard
HEAD is now at b7f8a0a Useless file now
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git status
# On branch master
nothing to commit (working directory clean)
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git cherry-pick ec6408cfb1b1894005f4
# On branch master
nothing to commit (working directory clean)
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git cherry-pick 15212a7ca9fade6bdcec
error: could not apply 15212a7... Use rubygems in ninary only
hint: after resolving the conflicts, mark the corrected paths
hint: with 'git add <paths>' or 'git rm <paths>'
hint: and commit the result with 'git commit -c 15212a7'
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ cd ..
Mac-mini-Akzhan-Abdulin:~ akzhanabdulin$ rm -rf git-commit-notifier
Mac-mini-Akzhan-Abdulin:~ akzhanabdulin$ git clone g...@github.com:akzhan/git-commit-notifier.git
Cloning into git-commit-notifier...
remote: Counting objects: 2080, done.
remote: Compressing objects: 100% (979/979), done.
remote: Total 2080 (delta 1314), reused 1605 (delta 1025)
Receiving objects: 100% (2080/2080), 243.47 KiB | 208 KiB/s, done.
Resolving deltas: 100% (1314/1314), done.
Mac-mini-Akzhan-Abdulin:~ akzhanabdulin$ cd git-commit-notifier
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git fetch origin
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git log
commit b7f8a0a5ead89ef0e1603a16c81b65168be511a5
Author: Akzhan Abdulin <akzhan....@gmail.com>
Date:   Wed Apr 6 19:52:56 2011 +0400

    Useless file now

commit c403b3d3ef7e1be9c5c5101af05c5a216895f14f
Author: Akzhan Abdulin <akzhan....@gmail.com>
Date:   Tue Apr 5 19:42:55 2011 +0400

    Version bump to 0.9.0

commit 1722346a92b9f1ed6c82f39edae808965afb9bdc
Author: Akzhan Abdulin <akzhan....@gmail.com>
Date:   Tue Apr 5 17:08:46 2011 +0400

    Useless require (it's done by binary)

commit a905ff52b6a307c50e2965ba24c8823019cfd409
Author: Akzhan Abdulin <akzhan....@gmail.com>
Date:   Tue Apr 5 15:36:54 2011 +0400

    Update specs to not use includes. Update source code to meet specs
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git cherry-pick 37bc4b3837f993aca727
error: could not apply 37bc4b3... Version bump to 0.9.1
hint: after resolving the conflicts, mark the corrected paths
hint: with 'git add <paths>' or 'git rm <paths>'
hint: and commit the result with 'git commit -c 37bc4b3'
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git status
# On branch master
# Unmerged paths:
#   (use "git reset HEAD <file>..." to unstage)
#   (use "git add/rm <file>..." as appropriate to mark resolution)
#
# both modified:      VERSION
#
no changes added to commit (use "git add" and/or "git commit -a")
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ vim VERSION 
ShowMarks requires Vim to have +signs support.
Press ENTER or type command to continue
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git add VERSION 
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git cherry-pick de3ef2e98198a2a213e1
fatal: Your local changes would be overwritten by cherry-pick.
Please, commit your changes or stash them to proceed.
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git checkout VERSION Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ 
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git cherry-pick de3ef2e98198a2a213e1
fatal: Your local changes would be overwritten by cherry-pick.
Please, commit your changes or stash them to proceed.
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git status
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
# modified:   VERSION
#
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git reset HEAD VERSION 
Unstaged changes after reset:
M VERSION
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git cherry-pick de3ef2e98198a2a213e1
[master a663f92] include_branches must be an array, can't be a string
 Author: Bodo Tasche <bo...@wannawork.de>
 1 files changed, 0 insertions(+), 1 deletions(-)
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git cherry-pick 57e9a4e3a80fdc5d6f46
[master db8b07d] include_branches now more friendly option to specify (string, array, comma separated string); New option - show_master_branch_name (used by us)
 2 files changed, 35 insertions(+), 5 deletions(-)
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git cherry-pick 581765d7fbef6f8213c7
[master f9c8bb0] oops, typo
 1 files changed, 1 insertions(+), 1 deletions(-)
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git cherry-pick bb9a03a1accb9f6434ba
[master e1923ae] Update config
 1 files changed, 3 insertions(+), 1 deletions(-)
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git push
Counting objects: 31, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (16/16), done.
Writing objects: 100% (22/22), 4.66 KiB, done.
Total 22 (delta 11), reused 9 (delta 5)
To g...@github.com:akzhan/git-commit-notifier.git
   b7f8a0a..e1923ae  master -> master
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git cherry-pick d8d1a4362b1e2bbbbaba
error: could not apply d8d1a43... Use Bundler instead of Jeweler
hint: after resolving the conflicts, mark the corrected paths
hint: with 'git add <paths>' or 'git rm <paths>'
hint: and commit the result with 'git commit -c d8d1a43'
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git status
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
# modified:   .gitignore
# modified:   Gemfile
# deleted:    Gemfile.lock
#
# Unmerged paths:
#   (use "git reset HEAD <file>..." to unstage)
#   (use "git add/rm <file>..." as appropriate to mark resolution)
#
# both modified:      Rakefile
# deleted by us:      git-commit-notifier.gemspec
#
# Changed but not updated:
#   (use "git add <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified:   VERSION
#
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ vim Rakefile 
ShowMarks requires Vim to have +signs support.
Press ENTER or type command to continue
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git add Rakefile 
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git add git-commit-notifier.gemspec
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git status
# On branch master
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
# modified:   .gitignore
# modified:   Gemfile
# deleted:    Gemfile.lock
# modified:   Rakefile
# new file:   git-commit-notifier.gemspec
#
# Changed but not updated:
#   (use "git add <file>..." to update what will be committed)
#   (use "git checkout -- <file>..." to discard changes in working directory)
#
# modified:   VERSION
#
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git commit -m "Use Bundler instead of Jeweler"
[master c3430b0] Use Bundler instead of Jeweler
 5 files changed, 96 insertions(+), 144 deletions(-)
 delete mode 100644 Gemfile.lock
 create mode 100644 git-commit-notifier.gemspec
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git push
Counting objects: 10, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (5/5), done.
Writing objects: 100% (6/6), 1.65 KiB, done.
Total 6 (delta 3), reused 1 (delta 0)
To g...@github.com:akzhan/git-commit-notifier.git
   e1923ae..c3430b0  master -> master
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git cherry-pick 3639bce908ec40f11992
[master 4c772fe] Automate gemspec
 1 files changed, 43 insertions(+), 91 deletions(-)
 rewrite git-commit-notifier.gemspec (62%)
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git cherry-pick 5c5e03c1f53f08b90cf8
[master a2d4ce3] Fix example of use for include_branches, fixes #79
 1 files changed, 5 insertions(+), 1 deletions(-)
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git cherry-pick b6c9730edd1edfaa86cf73008fdae25cf9b74af9
[master a21d73c] typos
 1 files changed, 1 insertions(+), 1 deletions(-)
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ git push
Counting objects: 15, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (10/10), done.
Writing objects: 100% (11/11), 1.32 KiB, done.
Total 11 (delta 6), reused 1 (delta 1)
To g...@github.com:akzhan/git-commit-notifier.git
   c3430b0..a21d73c  master -> master
Mac-mini-Akzhan-Abdulin:git-commit-notifier akzhanabdulin$ cd
Mac-mini-Akzhan-Abdulin:~ akzhanabdulin$ git clone gito...@git.undev.cc:backend/grida.git
Cloning into grida...
remote: Counting objects: 2773, done.
remote: Compressing objects: 100% (2074/2074), done.
remote: Total 2773 (delta 1689), reused 1010 (delta 648)
Receiving objects: 100% (2773/2773), 838.33 KiB, done.
Resolving deltas: 100% (1689/1689), done.
Mac-mini-Akzhan-Abdulin:~ akzhanabdulin$ cd grida/
Mac-mini-Akzhan-Abdulin:grida akzhanabdulin$ ls
Gemfile Rakefile config.ru grida.gemspec test
Gemfile.lock app db lib vendor
NOTES bin doc public
README config etc script
Mac-mini-Akzhan-Abdulin:grida akzhanabdulin$ vim grida.gemspec 
ShowMarks requires Vim to have +signs support.
Press ENTER or type command to continue
Mac-mini-Akzhan-Abdulin:grida akzhanabdulin$ vim grida.gemspec 
ShowMarks requires Vim to have +signs support.
Press ENTER or type command to continue
Mac-mini-Akzhan-Abdulin:grida akzhanabdulin$ vim grida.gemspec 
ShowMarks requires Vim to have +signs support.
Press ENTER or type command to continue
Mac-mini-Akzhan-Abdulin:grida akzhanabdulin$ vim Rakefile 
ShowMarks requires Vim to have +signs support.
Press ENTER or type command to continue
Mac-mini-Akzhan-Abdulin:grida akzhanabdulin$ ssh brida@brida
brida@brida's password: 
Linux hw01.undev.cc 2.6.26-2-amd64 #1 SMP Thu Nov 25 04:30:55 UTC 2010 x86_64

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Thu Apr 14 14:06:46 2011 from 192.168.215.157
brida@hw01:~$ vim /etc/sv/
brida-face/    gems_undev_cc/ getty-5/       hr_undev_cc/   pm_undev_cc/
brida@hw01:~$ vim /etc/sv/brida-face/run 

#!/bin/bash

ulimit -n 65536

# Settings
APP_ROOT=/var/www/face/
APP_USER=face
APP_GROUP=face
APP_RVM_GEMSET='ree-1.8.7-2010.02@face'
APP_RAILS_ENV='production'

UNICORN_CONFIG=$APP_ROOT/current/config/unicorn.rb
CMD="unicorn_rails -E $APP_RAILS_ENV -c $UNICORN_CONFIG"

# Set ENV
. /usr/local/rvm/scripts/rvm
export RAILS_ENV=$APP_RAILS_ENV
cd $APP_ROOT/current
rvm use $APP_RVM_GEMSET

pwd

# Run
echo "Running face unicorn."
exec 2>&1
exec chpst -u "${APP_USER}:${APP_GROUP}" $CMD


14 апреля 2011 г. 17:46 пользователь Akzhan Abdulin <akzhan....@gmail.com> написал:

Akzhan Abdulin

не прочитано,
15 апр. 2011 г., 06:47:2315.04.2011
– ror...@googlegroups.com
лишнего много отправилось. вот сам скрипт типичный

#!/bin/bash

ulimit -n 65536

# Settings
APP_ROOT=/var/www/face/
APP_USER=face
APP_GROUP=face
APP_RVM_GEMSET='ree-1.8.7-2010.02@face'
APP_RAILS_ENV='production'

UNICORN_CONFIG=$APP_ROOT/current/config/unicorn.rb
CMD="unicorn_rails -E $APP_RAILS_ENV -c $UNICORN_CONFIG"

# Set ENV
. /usr/local/rvm/scripts/rvm
export RAILS_ENV=$APP_RAILS_ENV
cd $APP_ROOT/current
rvm use $APP_RVM_GEMSET

pwd

# Run
echo "Running face unicorn."
exec 2>&1
exec chpst -u "${APP_USER}:${APP_GROUP}" $CMD
14 апреля 2011 г. 17:46 пользователь Akzhan Abdulin <akzhan....@gmail.com> написал:
Спасибо за поправки по существу. Имя _ было использовано, чтобы не писать example.com :)

Akzhan Abdulin

не прочитано,
15 апр. 2011 г., 06:51:1215.04.2011
– ror...@googlegroups.com
И типичный скрипт log/run

#!/bin/sh

mkdir -p /var/www/face/shared/log
exec svlogd -tt /var/www/face/shared/log


15 апреля 2011 г. 14:47 пользователь Akzhan Abdulin <akzhan....@gmail.com> написал:

NARKOZ

не прочитано,
14 июн. 2011 г., 06:30:4214.06.2011
– ror...@googlegroups.com, alexey...@gmail.com
а если приложений несколько?

Alexander Simonov

не прочитано,
14 июн. 2011 г., 09:24:5114.06.2011
– ror...@googlegroups.com
попробуйте мой golden_brindle гем. я думаю это то что вам нужно.

-- 
Alexander Simonov
Sent with Sparrow

On Tuesday, June 14, 2011 at 1:30 PM, NARKOZ wrote:

а если приложений несколько?

Maxim Filatov

не прочитано,
14 июн. 2011 г., 09:28:3714.06.2011
– ror...@googlegroups.com

On Jun 14, 2011, at 2:30 PM, NARKOZ wrote:

> а если приложений несколько?
то будет несколько вхостов у нгинкса.


--
Best regards,
Maxim Filatov

Ответить всем
Отправить сообщение автору
Переслать
0 новых сообщений