2014-10-10 25 views
3

如何组织用户来运行项目的不同部分?有最佳做法吗?如何组织用户运行项目的不同部分?

例如,我使用nginx,redis,gunicorn,supervisor来运行我的django应用程序。

为每个部件(redis用户运行redis等)或者只有一个运行所有这些部件的用户(“project_name”)是否更好?

+0

我使用用户每个服务I.e. nginx为nginx,redis为redis,appuser为由supervisord发起的给定应用程序 – jvc26 2014-10-12 13:02:31

回答

0

这将取决于您的操作系统。对于用户设置没有最佳实践django规则,只有最佳实践操作为您的操作系统。我为我的Django部署使用基于Debian的Linux。对于你提到的每个服务,我只需使用操作系统默认的用户(www-data用于nginx,postgres用于数据库,redis用于redis)。唯一需要'选择'的用户是运行应用服务器的用户(在我的情况下,我使用uWSGI)。为了方便起见,我使用www-data。您可以创建一个应用服务器用户并将其放入www-data组中以解决前端和应用服务器之间的任何权限冲突。