On Tue, May 14, 2013 at 5:33 PM, Gilles <[email protected]> wrote:

> On Tue, 14 May 2013 09:50:32 +0300, Andriy Kornatskyy
> <[email protected]> wrote:
> >Anyway here are options:
> >1. Add debian wheezy repository and install from there
>
> Thanks for the infos about virtualenv. Based on the name, I thought it
> was some kind of PC virtualization, which wouldn't fit on an
> appliance. It looks like a pretty useful thing: Do people who run
> uWSGI Python apps usually run them in a virtualenv?
>
> After adding the relevant lines in /etc/apt/sources.lists, quite a lot
> of Debian packages are available:
>
> =====================
> # apt-cache search uwsgi
> nginx-extras - nginx web/proxy server (extended version)
> nginx-full - nginx web/proxy server (standard version)
> python-django-uwsgi-admin - Django application for administering uWSGI
> server
> python-uwsgicc - uWSGI control center
> python-uwsgidecorators - module of decorators for elegant access to
> uWSGI API (Python)
> python3-uwsgidecorators - module of decorators for elegant access to
> uWSGI API (Python 3)
> uwsgi - fast, self-healing application container server
> uwsgi-app-integration-plugins - plugins for integration of uWSGI and
> application
> uwsgi-core - fast, self-healing application container server (core)
> uwsgi-dbg - debugging symbols for uWSGI server and it's plugins
> uwsgi-extra - fast, self-healing application container server (extra
> files)
> uwsgi-infrastructure-plugins - infrastructure plugins for uWSGI
> uwsgi-plugin-admin - admin plugin for uWSGI
> uwsgi-plugin-cache - cache plugin for uWSGI
> uwsgi-plugin-carbon - carbon plugin for uWSGI
> uwsgi-plugin-cgi - CGI plugin for uWSGI
> uwsgi-plugin-echo - echo plugin for uWSGI
> uwsgi-plugin-erlang - Erlang plugin for uWSGI
> uwsgi-plugin-fastrouter - fastrouter plugin for uWSGI
> uwsgi-plugin-fiber - fiber loop engine plugin for uWSGI
> uwsgi-plugin-graylog2 - graylog2 plugin for uWSGI
> uwsgi-plugin-http - HTTP server plugin for uWSGI
> uwsgi-plugin-jvm-openjdk-6 - Java plugin for uWSGI (OpenJDK 6)
> uwsgi-plugin-jwsgi-openjdk-6 - JWSGI plugin for uWSGI (OpenJDK 6)
> uwsgi-plugin-logsocket - logsocket plugin for uWSGI
> uwsgi-plugin-lua5.1 - Lua WSAPI plugin for uWSGI (Lua 5.1)
> uwsgi-plugin-nagios - Nagios plugin for uWSGI
> uwsgi-plugin-ping - ping plugin for uWSGI
> uwsgi-plugin-probeconnect - probeconnect plugin for uWSGI
> uwsgi-plugin-probepg - probepg plugin for uWSGI
> uwsgi-plugin-psgi - Perl PSGI plugin for uWSGI
> uwsgi-plugin-pyerl-python - pyerl plugin for uWSGI (Python)
> uwsgi-plugin-pyerl-python3 - pyerl plugin for uWSGI (Python 3)
> uwsgi-plugin-python - Python WSGI plugin for uWSGI
> uwsgi-plugin-python3 - Python 3 WSGI plugin for uWSGI
> uwsgi-plugin-rack-ruby1.8 - Rack plugin for uWSGI (Ruby 1.8)
> uwsgi-plugin-rack-ruby1.9.1 - Rack plugin for uWSGI (Ruby 1.9.1)
> uwsgi-plugin-rpc - RPC plugin for uWSGI
> uwsgi-plugin-rrdtool - rrdtool plugin for uWSGI
> uwsgi-plugin-rsyslog - rsyslog plugin for uWSGI
> uwsgi-plugin-signal - signal plugin for uWSGI
> uwsgi-plugin-symcall - symcall plugin for uWSGI
> uwsgi-plugin-syslog - syslog plugin for uWSGI
> uwsgi-plugin-ugreen - uGreen plugin for uWSGI
> uwsgi-plugins-all - all available plugins for uWSGI
> =====================
>
> At first sight, which should I install to write a "Hello, world"
> script with Nginx + uWSGI?
>

maybe not helpful, but methinks you're making it more complicated than
necessary...

under NO circumstances would i recommend using system packages for this;
[IMO] uWSGI -- and even NGINX -- are not system support libraries you're
apps use intermittently or on passing, they are best viewed as an integral
component, a core, fundamental requirement, * inseparable* from the
application code... as such, it should be bundled and deployed explicitly.

case in point: some distros encountered massive problems by allowing their
core tools -- ie. package managers -- to depend on the *system* python,
rather than a private build... making it rather easy to bork the system
itself in the worst case (oh say, default to py3k), or hold back updates at
the very least.

you will also [often] find, when they exist at all, uWSGI packages are
poorly maintained, out-of-date, and/or pathologically "modular"...

tools like virtualenv exist to create such isolated environments, namely,
one  you can *guarantee* is identical to test/QA builds.

i suggest you simply pull the latest stable, or if you insist, the latest
LTS releases for each project and just build them; you will fond that both
reduce to a *single* binary in ~30 seconds each. i run uWSGI standalone on
a sheevaplug, pandaboard, and raspberry pi without issue. after this, you
can begin tuning and customizing.

do the above and you'll can a "hello world" app running in less than 10
shell statements -- this is not a simplification. drop NGINX and i can have
you running in 3:

$ wget http://projects.unbit.it/downloads/uwsgi-latest.tar.gz -O - | tar xz
$ cd uwsgi-* && python uwsgiconfig.py --build
$ ./uwsgi --http :9000 --eval 'from pprint import pformat as pf, pprint as
pp; application = lambda e,s: [s("200 OK", [("Content-Type",
"text/plain")])(pf(e)) or pp(e)]'

...all just my opinion of course :)

-- 

C Anthony
_______________________________________________
uWSGI mailing list
[email protected]
http://lists.unbit.it/cgi-bin/mailman/listinfo/uwsgi

Reply via email to