python编程:linux环境gunicorn+nginx部署django项目

简介: python编程:linux环境gunicorn+nginx部署django项目

安装包


pip install gunicorn supervisor

gunicorn

确保django项目中有 wsgi.py 文件


通过gunicorn启动django项目(project需要换为相应的名称)


gunicorn --chdir project_dir --pythonpath venv/bin/python -w4 -b0.0.0.0:8090 project_name.wsgi:application

如果启动失败,就kill


lsof -i:8090
kill pid

访问测试:http://0.0.0.0:8090


nginx

找到nginx的配置文件


nginx -t

在末尾添加一下内容, 当然也可以单独配置


http {
    server {
        listen  8000;  # nginx的监听端口
        server_name localhost;
        location ^~ /static/ {
        root /project;  # 此处配置静态文件路径,不带static
        }
        location / {
            proxy_pass http://127.0.0.1:8090;  # guncorn启动django的监听路径和端口
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }
    }
}

nginx的基本操作


service nginx start  # 启动
service nginx stop # 关闭
service nginx restart  # 重启

配置完了执行:


nginx -t  # 检查语法
service nginx restart # 重启nginx

访问测试:http://127.0.0.1:8000/


supervisor

配置supervisor


[program:project_name]
directory=project_dir
command=gunicorn --pythonpath venv/bin/python -w4 -b0.0.0.0:8090 project_name.wsgi:application
autostart=true
autorestart=true
stdout_logfile=project.log
stderr_logfile=project.err        ; stderr log path, NONE for none; default AUTO
redirect_stderr=true          ; redirect proc stderr to stdout (default false)
stopsignal=QUIT               ; signal used to kill process (default TERM)

先将之前启动的gunicorn关闭, 再启动supervisor,这样可以确保程序异常退出后自动重启


python supervisord -c supervisord.conf
参考
django2.0+uwsgi+nginx部署
查看nginx配置文件路径
mac环境composer新建php的symfony项目并用nginx配置
python编程:mac环境gunicorn+nginx部署flask项目
Django 部署(Nginx)
django 中静态文件配置 static

相关文章
|
6月前
|
应用服务中间件 网络安全 nginx
手把手教你使用 Docker 部署 Nginx 教程
本文详解Nginx核心功能与Docker部署优势,涵盖镜像拉取、容器化部署(快速、挂载、Compose)、HTTPS配置及常见问题处理,助力高效搭建稳定Web服务。
2618 4
|
应用服务中间件 PHP nginx
今日小结通过aliyun的本地容器镜像部署我的nginx和php环境
简介: 本教程介绍如何基于 Dragonwell 的 Ubuntu 镜像创建一个运行 Nginx 的 Docker 容器。首先从阿里云容器镜像服务拉取基础镜像,然后编写 Dockerfile 确保 Nginx 作为主进程运行,并暴露 80 端口。最后,在包含 Dockerfile 的目录下构建自定义镜像并启动容器,确保 Nginx 在前台运行,避免容器启动后立即退出。通过 `docker build` 和 `docker run` 命令完成整个流程。
521 25
今日小结通过aliyun的本地容器镜像部署我的nginx和php环境
|
6月前
|
应用服务中间件 Linux nginx
在虚拟机Docker环境下部署Nginx的步骤。
以上就是在Docker环境下部署Nginx的步骤。需要注意,Docker和Nginix都有很多高级用法和细节需要掌握,以上只是一个基础入门级别的教程。如果你想要更深入地学习和使用它们,请参考官方文档或者其他专业书籍。
304 5
|
7月前
|
Kubernetes 应用服务中间件 Nacos
Kubernetes环境下Nginx代理Nacos服务请求故障诊断
以上方法不仅适用于排除特定环境下出现故障情况,也适合作为一般性指南帮助运维人员快速准确地找出并解决问题。实际操作中还需根据现场实际情况灵活运用这些技巧,并结合自身经验进行判断和处理。
352 12
|
11月前
|
应用服务中间件 Linux 网络安全
技术指南:如何把docsify项目部署到基于CentOS系统的Nginx中。
总结 与其他部署方法相比,将docsify项目部署到基于CentOS系统的Nginx中比较简单。以上步骤应当帮助你在不花费太多时间的情况下,将你的项目顺利部署到Nginx中。迈出第一步,开始部署你的docsify项目吧!
423 14
|
Ubuntu 应用服务中间件 Linux
Linux下搭建Nginx环境的搭建
Linux下搭建Nginx环境的搭建
303 6
|
应用服务中间件 Shell PHP
windows系统配置nginx环境运行pbootcms访问首页直接404的问题
windows系统配置nginx环境运行pbootcms访问首页直接404的问题
|
前端开发 JavaScript 应用服务中间件
使用nginx部署网站
使用nginx部署网站
|
监控 应用服务中间件 网络安全
部署Django应用:使用Gunicorn和Nginx构建高效的生产环境
部署Django应用:使用Gunicorn和Nginx构建高效的生产环境
1164 0
|
7月前
|
Linux 应用服务中间件 Shell
二、Linux文本处理与文件操作核心命令
熟悉了Linux的基本“行走”后,就该拿起真正的“工具”干活了。用grep这个“放大镜”在文件里搜索内容,用find这个“探测器”在系统中寻找文件,再用tar把东西打包带走。最关键的是要学会使用管道符|,它像一条流水线,能把这些命令串联起来,让简单工具组合出强大的功能,比如 ps -ef | grep 'nginx' 就能快速找出nginx进程。
800 1
二、Linux文本处理与文件操作核心命令