You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 18.04 EC2中gunicorn服务文件Group参数配置问题咨询

Gunicorn服务Group配置问题解答

你当前的Gunicorn配置存在问题,大概率会导致服务启动失败,原因如下:

  • 你执行的groups命令输出的是当前登录的ubuntu用户所属的所有用户组,结果中没有www-data,说明要么你的系统中不存在www-data这个用户组,要么ubuntu用户没有被加入该组。
  • Gunicorn服务配置中指定了运行用户为ubuntu、运行组为www-data,如果ubuntu用户不在www-data组内,或者www-data组本身不存在,服务启动时会抛出权限相关错误,无法正常运行。

场景1:无特殊权限隔离需求,快速部署使用

直接修改Gunicorn服务文件的Group参数值为ubuntu即可,修改后的对应配置段如下:

[Service]
User=ubuntu
Group=ubuntu
WorkingDirectory=/home/ubuntu/djangoapp1
ExecStart=/home/ubuntu/env/bin/gunicorn \
--access-logfile - \
--workers 3 \
--bind unix:/run/gunicorn.sock \
djangoapp1.wsgi:application

修改完成后执行以下命令生效:

sudo systemctl daemon-reload
sudo systemctl restart gunicorn

执行sudo systemctl status gunicorn确认服务状态为active (running)即可。


场景2:需要配合Nginx等Web服务做权限统一,要使用www-data组

按以下步骤操作即可:

  1. 首先确认系统是否存在www-data组,执行命令:
    getent group www-data
    如果没有任何输出,先创建该组:
    sudo groupadd www-data
  2. 将ubuntu用户加入www-data组:
    sudo usermod -aG www-data ubuntu
  3. 调整项目目录的权限归属,保证组用户有访问权限:
sudo chown -R ubuntu:www-data /home/ubuntu/djangoapp1
sudo chmod -R 750 /home/ubuntu/djangoapp1
  1. 重载服务配置并重启Gunicorn:
sudo systemctl daemon-reload
sudo systemctl restart gunicorn

同样通过status命令验证服务运行状态即可。


内容的提问来源于stack exchange,提问作者milo2810

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 22:54:02