Django基於Ubuntu的兩種項目部署方式

部署方式1:

  1. 安裝包

    sudo apt update
    apt install mysql-server mysql-client
    
  2. 設置遠程訪問mysql

    a) 查找 mysql.conf 
        find / -name mysql.conf
    b)註釋/etc/mysql/mysql.conf.d 裏
         mysql.cof 文件的 bind_address
    
    c)mysql -u root -p
       use mysql
    
        GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root@123' WITH GRANT OPTION;
        flush privileges; 
    
  3. 修改django的配置文件

    a)修改settings.py文件中的DEBUG=FALSE,ALLOWED_HOST=['*']
    b)修改urls.py
     b1)from django.views.static import serve
        url中加入以下配置
        url(r'^static/(?P<path>.*)$', serve, {"document_root": settings.STATIC_ROOT}),
        url(r'^media/(?P<path>.*)$', serve, {"document_root": settings.MEDIA_ROOT}),
      b2)setting中
        STATIC_ROOT = os.path.join(BASE_DIR, 'static')
      b3)url中修改首頁訪問的地址
        url(r'^$', views.home)
    
  4. 安裝pip3

    apt install python3-pip
    
  5. 安裝必備庫

    pip3 install django==1.11
    pip3 install pymysql
    pip3 install Pillow
    
  6. 查看進程

    netstat -lntp
    
  7. 啓動項目

    python3 manage.py runserver
    

部署方式2:

使用nginx+uwsgi配置django項目

  1. 安裝nginx

    sudo apt-get install nginx
    
  2. 查看nginx的狀態

    systemctl status nginx 查看nginx的狀態
    systemctl start/stop/enable/disable nginx 啓動/關閉/設置開機啓動/禁止開機啓動
    
    service nginx status/stop/restart/start
    
  3. 安裝uwsgi

    pip install uwsgi
    
  4. nginx的配置文件中加載自定義的nginx的配置文件

    vim /etc/nginx/nginx.conf
    在server中加入以下配置:
        include /home/app/conf/*.conf;
    
  5. 配置自定義的nginx配置文件

server {
    listen       80;
    server_name 47.96.130.236 localhost;

    access_log /home/app/log/access.log;
    error_log /home/app/log/error.log;

    location / {
        include uwsgi_params;
        uwsgi_pass 127.0.0.1:8890;
    }
    location /static/ {
        alias /home/app/day11axf0/static/;
        expires 30d;
    }
}

6.配置uwsgi,名稱爲uwsgi.ini

    [uwsgi]
    # variables
    projectname = day11axf0
    newprojectname = day11axf
    base = /home/app
    # config
    #plugins = python
    master = true
    #protocol = uwsgi
    processes = 4
    #env = DJANGO_SETTINGS_MODULE=%(projectname).settings
    pythonpath = %(base)/%(projectname)
    module = %(newprojectname).wsgi
    socket = 127.0.0.1:8890
    logto = %(base)/log/uwsgi.log

7.啓動方式:

uwsgi --ini uwsgi.ini
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章