The following line (with parameters replaced) in upstarts script block does work for me
exec /path/to/virtualenv/bin/gunicorn --pid=$pid --name="$name" --user=$name --group=$name \ --access-logfile=$log_dir/access.log --error-logfile=$log_dir/error.log $config 2\ >>$log_dir/error.log The user account I run gunicorn under is not www-data, though, and does have a shell. On Thu, Jul 5, 2012 at 5:32 AM, Mark Huang <zhengha...@gmail.com> wrote: > Hi Everyone, > > I currently have 2 servers A and B, both running on Debian. Server A was > setup 1 month ago with Gunicorn 1.4.3. I created a new linux user called > 'web', with shell access and a home directory. The virutalenv is managed by > virtualenvwrapper in the home directory. So what I would do to start my > pyramid application would be to login as root and switch to the 'web' user > (su - web) and run gunicorn like so: > > gunicorn_paster -w 5 -t 80 --log-file=/somewhere/with/logs -D > production.ini > > This works! > > Server B was setup yesterday. It is using Gunicorn 1.4.5. My boss wants me > to use the default www-data user and group instead of creating a separate > user and group. So I created my virtualenv to run my pyramid application as > the 'root' user. All of my code and logs live in the /srv directory and > sub-directories. I gave chown-ed the srv directory with www-data:www-data. > Now....when I run gunicorn paster, I had to specify a user and group to run > as using the '-u' and '-g' flag as stated in their documentation: > > gunicorn_paster -w 5 -t 80 --log-file=/somewhere/with/logs -u www-data > -g www-data -D production.ini > > However, this gave an error. I added the --log-level=debug into it and the > error says: > > 2012-07-05 11:13:35 [29578] [INFO] Worker exiting (pid: 29578) > /paste/deploy/loadwsgi.py", line 296, in loadcontext > File > "/root/.virtualenvs/rhino_env/lib/python2.7/site-packages/PasteDeploy-1.5.0-py2.7.egg/paste/deploy/loadwsgi.py", > line 320, in _loadconfig > File > "/root/.virtualenvs/rhino_env/lib/python2.7/site-packages/PasteDeploy-1.5.0-py2.7.egg/paste/deploy/loadwsgi.py", > line 454, in get_context > File > "/root/.virtualenvs/rhino_env/lib/python2.7/site-packages/PasteDeploy-1.5.0-py2.7.egg/paste/deploy/loadwsgi.py", > line 476, in _context_from_use > File > "/root/.virtualenvs/rhino_env/lib/python2.7/site-packages/PasteDeploy-1.5.0-py2.7.egg/paste/deploy/loadwsgi.py", > line 406, in get_context > File > "/root/.virtualenvs/rhino_env/lib/python2.7/site-packages/PasteDeploy-1.5.0-py2.7.egg/paste/deploy/loadwsgi.py", > line 296, in loadcontext > File > "/root/.virtualenvs/rhino_env/lib/python2.7/site-packages/PasteDeploy-1.5.0-py2.7.egg/paste/deploy/loadwsgi.py", > line 328, in _loadegg > File > "/root/.virtualenvs/rhino_env/lib/python2.7/site-packages/PasteDeploy-1.5.0-py2.7.egg/paste/deploy/loadwsgi.py", > line 620, in get_context > File > "/root/.virtualenvs/rhino_env/lib/python2.7/site-packages/PasteDeploy-1.5.0-py2.7.egg/paste/deploy/loadwsgi.py", > line 646, in find_egg_entry_point > File > "/root/.virtualenvs/rhino_env/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg/pkg_resources.py", > line 1954, in load > File "/srv/web/prod/rhino/rhino/__init__.py", line 2, in <module> > from pyramid.config import Configurator > ImportError: No module named pyramid.config > > The really weird thing is that, if I open up a python console within my > virtualenv, I am able to import that module!! What's going on? I suspect > it is permissions related or something and that I am unable to run Gunicorn > as a non root user (without shell access). > > Regards, > Mark Huang > > > -- > You received this message because you are subscribed to the Google Groups > "pylons-discuss" group. > To view this discussion on the web visit > https://groups.google.com/d/msg/pylons-discuss/-/8Tjcpoufp5AJ. > To post to this group, send email to pylons-discuss@googlegroups.com. > To unsubscribe from this group, send email to > pylons-discuss+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/pylons-discuss?hl=en. -- You received this message because you are subscribed to the Google Groups "pylons-discuss" group. To post to this group, send email to pylons-discuss@googlegroups.com. To unsubscribe from this group, send email to pylons-discuss+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/pylons-discuss?hl=en.