同一个域名部署多个Django 项目 nginx + uwsgi + Miniconda

本文详细介绍了如何使用nginx和uwsgi在Miniconda环境中部署多个Django项目。配置文件 uwsgi.ini 在每个项目的根目录下创建,并分别设置了不同的配置。同时,nginx的配置也进行了相应的调整,使得不同项目可以通过指定的端口号进行访问。
部署运行你感兴趣的模型镜像

Django 项目部署 nginx + uwsgi + Miniconda

Django 项目部署 nginx + uwsgi + Minicondahttps://blog.youkuaiyun.com/Sober_Trunk/article/details/124076725        继上一篇文章,对同一个域名部署多个Django 项目进行进一步说明,所有的配置都与上一篇文章一致。

说明

  • 第一个项目的路径:/data/wwwroot/managesystem
  • 第一个项目的静态文件路径:/data/wwwroot/managesystem/static
  • 第二个项目的路径:/data/wwwroot/InspectLabe
  • 第二个项目的静态文件路径:/data/wwwroot/InspectLabe/static

1 配置uwsgi

配置uwsgi,在项目根目录下(manage.py同层目录),新建uwsgi.ini

第一个项目的uwsgi.ini

# mysite_uwsgi.ini file

[uwsgi]

# Django-related settings
# 项目根目录的路径
chdir = /data/wwwroot/managesystem                
# Django's wsgi file
wsgi-file = managesystem/wsgi.py
#module = wtp_02.wsgi:application
# uwsgi服务器的角色
master=True
# 进程7数
processes=4
# 线程数
threads=2
# 存放进程编号的文件
pidfile= uwsgi.pid
# the socket (use the full path to be safe
socket=0.0.0.0:8082
#http = 127.0.0.1:8002

#stats = 127.0.0.1:9191
# ... with appropriate permissions - may be needed
#chmod-socket    = 664
# clear environment on exit
vacuum          = true
# 日志文件,因为uwsgi可以脱离终端在后台运行,日志看不见。我们以前的runserver是依赖终端的
daemonize=uwsgi.log

# 虚拟环境的目录
virtualenv = /usr/local/miniconda3/envs/ky

第二个项目的uwsgi.ini

# mysite_uwsgi.ini file

[uwsgi]

# Django-related settings
# 项目根目录的路径
chdir = /data/wwwroot/InspectLabel             
# Django's wsgi file
wsgi-file = InspectLabel/wsgi.py
#module = wtp_02.wsgi:application
# uwsgi服务器的角色
master=True
# 进程7数
processes=4
# 线程数
threads=2
# 存放进程编号的文件
pidfile= uwsgi.pid
# the socket (use the full path to be safe
socket=0.0.0.0:8100
#http  = 127.0.0.1:8100

#stats = 127.0.0.1:9191
# ... with appropriate permissions - may be needed
#chmod-socket    = 664
# clear environment on exit
vacuum          = true
# 日志文件,因为uwsgi可以脱离终端在后台运行,日志看不见。我们以前的runserver是依赖终端的
daemonize=uwsgi.log

# 虚拟环境的目录
virtualenv = /usr/local/miniconda3/envs/bz

2 配置nginx

#user root;
#worker_processes  1;

events {
    worker_connections  1024;
    }


http {
    include       mime.types;
    default_type  application/octet-stream;

    sendfile        on;

    keepalive_timeout  65;

    gzip on;

    server {
        listen 8002;     #监听端口号;各项目之间监听端口号不能一样,可以自行设置
        # 这里可以填写你的ip地址或者域名
        server_name *.*.*.*;

     location / {
            # 将nginx所有请求转到uwsgi
            include uwsgi_params;
            # uwsgi的ip与端口,末尾的端口号要与项目的uwsgi.ini文件的socket端口号保持一致
            uwsgi_pass 127.0.0.1:8082;
            }

      location /static {
            # 静态文件目录
            alias /data/wwwroot/managesystem/static;
            # 
}   

      error_page   500 502 503 504  /50x.html;
      location = /50x.html {
           root   html;
          }
     }

      server {
        listen 8003;     #监听端口号;各项目之间监听端口号不能一样,可以自行设置
        # 这里可以填写你的ip地址或者域名
        server_name *.*.*.*;

      client_max_body_size 75M;   # adjust to taste      

      location / {
            # 将nginx所有请求转到uwsgi
            include uwsgi_params;
            # uwsgi的ip与端口,末尾的端口号要与项目的uwsgi.ini文件的socket端口号保持一致
            uwsgi_pass 127.0.0.1:8100;
            }

      location /static {
             # 静态文件目录
            alias /data/wwwroot/InspectLabel/static;
            }

      error_page   500 502 503 504  /50x.html;
      location = /50x.html {
             root   html;
            }

            }

}

说明:

部署后进入项目的地址为【server_name】:【设置的端口号】

例:server_name:www.baidu.com

        listen:8002

则网址为:www.baidu.com:8002

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值