uwsgi,nginx,静态文件部署

1.pip freeze > plist.txt 在项目的根目录执行命令收集所有的包,环境
ps -ef|grep uwsgi 查看进程是否开启
通过ftp软件将开发好的项目上传到服务器某个目录
使用git命令将项目上传到远程仓库
将setting中ALLOWED_HOSTS = ["*"]
DEBUG = Flash

一.安装创建虚拟环境
3.1 确保系统安装了python3,pip3
检查是否有pip3 命令: pip3 -V

			安装
			sudo apt install python3-pip
			可能出现的错误:无法获得锁 (11:资源暂时不可用)
				cd /到无法锁定管理的目录
				ls  查看
				sudo rm lock  删除  可多删
				
	
  3.2 安装
		sudo pip3 install virtualenv
		sudo pip3 virtualenvwrapper

一.

  1. cd ~ 回到当前用户

  2. ls -alh 找到 .bashrc文件

  3. sudo vi .bashrc 打开编辑文件

  4. shift + j 到最底部

  5. export WORKON_HOME=$HOME/.virtualenvs
    export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
    source /usr/local/bin/virtualenvwrapper.sh
    粘贴到底部

  6. :wq! 强制保存退出

  7. source .bashrc 更新,没提示更新成功

  8. mkvirtualenv lenv 创建虚拟环境,自动进入虚拟环境

  9. whereis virtualenvwrapper
    检查是否安装成功,记住路径
    二. 将window项目同步到linux

  10. sudo apt install git 安装git

  11. cd /home

  12. ls

  13. cd kwx kwx 自己的文件夹

  14. ls

  15. sudo mkdir 文件名 创建一个文件

  16. sudo chmod -R 777 文件名 改权限

  17. cd 文件名

  18. git clone 远程仓库网址 克隆项目

  19. cd 文件名 cd到创建克隆的文件中

  20. pip3 install -r plist.txt 安装之前生成的包

  21. 注意 安装mysqlclient==1.4.2.post1 会失败导致所有的模块不能安装
    sudo apt insatall libmysqlclientdev 先安装这个包之后就可以安装mysqlclient
    三. 发布uwsgi服务器

  22. pip3 install uwsgi 进入虚拟环境 ,安装uwsgi wsgi公共网关服务接口协议

  23. ls

  24. cd 项目根目录

  25. pwd 复制项目路径

  26. 在window下的项目根目录下方新建uwsgi.ini把下方的代码配置到新建的uwsgi.ini下

    [uwsgi]
    #(使用nginx连接时,使用socket)
    #socket=外网ip:端口
    http=0.0.0.0:12000
    chdir=项目根目录,把16复制的路径黏贴在这
    wsgi-file=项目中的wsgi.py 文件的目录
    processes=4 #四个进程
    threads=2 #两个线程
    master=True # 是主机
    pidfile=uwsgi.pid #停止文件
    daemonize=uwsgi.log #日志文件

  27. git提交 push到远程仓库 确认push成功

  28. git pull 在虚拟机中的项目中

  29. ls 查看是否pull成功下uwsgi.ini文件

  30. uwsgi --ini uwsgi.ini 启动uwsgi.ini文件
    uwsgi --stop uwsgi.pid 停止
    uwsgi --reload uwsgi.pid 重启

  31. ifconfig 查看ip 使用http查看链接ip+端口12000
    如果有错在linux系统下的项目中ls查看有uwsgi.log 日志文件可以看错误
    vi uwsgi.log 改完不要忘了在pull拉取一下
    现在

  32. uwsgi --stop uwsgi.pid 停止 每一次启动前都要先停止

  33. uwsgi --ini uwssgi.ini 启动 配套来
    反复开启会导致关闭不了进程,ps -ef|grep uwsgi 查看第一个进程号,
    vi uwsgi.pid 查看是进程号是否一致,不一致无法关闭
    将进程号修改一致就可以了,再关闭,启动
    四.uwsgi无法查看静态文件,使用nginx服务器部署项目

  34. sudo apt install nginx

  35. sudo vi /etc/nginx/ nginx.conf 修改nginx配置文件

  36. Virtual Host Configs 下空白处添加以下配置,注释不用

    server {
    listen 0.0.0.0:13000; # nginx的端口
    location / {
    include uwsgi_params; # 将所有参数转到uwsgi下
    uwsgi_pass 0.0.0.0:12000; # uwsgi的ip与端口
    }
    }

  37. :wq! 保存退出

  38. sudo nginx -s stop 关闭nginx服务器

  39. 要用nginx服务器,使用socket,之前在 三 17步 里

    将uwsig配置文件其中的http修改socket
    socket=0.0.0.0:12000
    #http=0.0.0.0:12000

  40. 在进行git,push推送 , git pull拉取 都是在项目中进行

  41. uwsgi --stop uwsgi.pid

  42. uwsgi – ini uwsgi.ini

  43. sudo nginx

  44. ps -ef|grep uwsgi
    五. nginx 可以进行负载均衡,实现逆向解析 ,静态文件的加载

  45. sudo mkdir 文件名 在项目下新建文件

  46. sudo chmod -R 777 文件名 修改新文件权限

  47. cd 文件

  48. pwd 复制路径

  49. cd …

  50. ls

  51. cd 项目中的settings.py

  52. sudo vi settings.py

  53. STATIC_ROOT = “新建文件的路径” 五. 37 :wq!

  54. python manage.py collectstatic 找到项目根目录中的manage.py 进行静态文件收集

  55. cd 文件 五.34 新建的文件中看看是否收集成功

  56. sudo vi /etc/nginx/nginx.conf

  57. server {
    listen 0.0.0.0:13000; # nginx的端口
    location / {
    include uwsgi_params; # 将所有参数转到uwsgi下
    uwsgi_pass 0.0.0.0:12000; # uwsgi的ip与端口
    }

      Location /static {                                                  **新添加的**
      	Alias /home/zzy/py1903/demo3/staticroot;    
      	}       
      	
      }
    
  58. sudo nginx -s stop

  59. sudo nginx

  60. ip+ 13000 运行

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值