2

I use uwsgi running in the emperor mode to serve multiple Django Applications on one server. Therefore for every project I have a own config file like this one:

<uwsgi>
    <master>true</master>
    <processes>1</processes>
    <vaccum>true</vaccum>
    <chmod-socket>666</chmod-socket>
    <socket>/tmp/%n.sock</socket>
    <uid>www-data</uid>
    <gid>www-data</gid>
    <pythonpath>%d../%n</pythonpath>
    <module>%n</module>
</uwsgi>

Everything works fine, the only thing which concerns me or which I don't completly understand is, when I run uwsgi with "uwsgi --emperor /home/user/apps/vassals/" I get the warning message "* WARNING: you are running uWSGI as root !!! (use the --uid flag) *".

Can I ignore that message or does it mean that uwsgi doesn't consider the uid gid settings in the project config files?

Many thanks. Mario

1

You could ignore it, however, for best practice you should specify running user.

uwsgi --emperor /path/to/vassels/* --uid www-data --gid www-data 

It's complaining that the emperor process is running as root. Now, while this doesn't serve any requests, it could be a potential problem. Each of the vassels will have the configuration you've specified.

It's always advisable if at all possible to run a process isolated.

2

uWSGI will warns you whenever you run it as root. Independently by the usage (it is perfectly fine to run the emperor as root to allow vassals to be mapped to different uid), you will get the warning. Users must be conscious when they run root processes.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.