初探django-演示charade在centos7下的部署

=======================================

2016/1/18

####charade 是一个猜单词的小游戏。

https://github.com/opera443399/charade

prepare
-------
1. pip+django ::

        [[email protected] ~]# yum install python-pip
        [[email protected] ~]# pip install django
        django 项目用到了 pytz
        [[email protected] ~]# pip install pytz

2. 调整 project setting ::

        [[email protected] ~]# cd /opt
        直接克隆这个项目 
        [[email protected] opt]# git clone https://github.com/opera443399/charade.git
        [[email protected] opt]# cd charade/www/

6. 试着运行一下 ::

        django默认是启用了 DEBUG 选项,但 charade 这个项目的代码已经关闭 DEBUG 选项,并设置了 ALLOWED_HOSTS 和 STATIC_ROOT :
        [[email protected] www]# vim www/settings.py
        DEBUG = False
        
        ALLOWED_HOSTS = [‘*‘]
        
        STATIC_ROOT = os.path.join(BASE_DIR,‘static‘)
        
        现在,先临时调整配置:
        [[email protected] www]# vim www/settings.py 
        DEBUG = True
        
        运行服务:
        [[email protected] www]# python manage.py runserver 0.0.0.0:80
        在浏览器访问,测试确认后台的数据读写无异常后,停止运行,后续将使用uwsgi来管理。
    

7. admin后台 ::

        [[email protected] www]# python manage.py createsuperuser
        根据提示创建root密码用于登录后台。
        访问地址:http://you_server_ip/admin/

8. debug ::

        DEBUG 选项处于关闭状态时,则 django 不处理静态文件,此时应该配置nginx或apache来处理静态文件。
    
    
uwsgi+supervisord+nginx
----------------------
1. 安装 ::

        [[email protected] www]# yum install nginx python-devel
        [[email protected] www]# yum groupinstall "development tools"
        [[email protected] www]# pip install supervisor
        [[email protected] www]# whereis supervisord
        supervisord: /usr/bin/supervisord /etc/supervisord.conf
        
        [[email protected] www]# pip install uwsgi
        [[email protected] www]# whereis uwsgi
        uwsgi: /usr/bin/uwsgi    

2. 配置 ::

    1) 收集django项目的static文件:
    
        [[email protected] www]# python manage.py collectstatic
    
    2) 使用supervisor来管理uwsgi服务,用uwsgi来运行django:
    
        [[email protected] www]# # echo_supervisord_conf > /etc/supervisord.conf         && mkdir /etc/supervisor.d         && echo -e ‘[include]\nfiles=/etc/supervisor.d/*.ini‘ >>/etc/supervisord.conf         && grep ^[^\;] /etc/supervisord.conf
        
        [[email protected] www]# whereis supervisord
    
    4) 启动 supervisord 服务:
    
        [[email protected] www]# /usr/bin/supervisord -c /etc/supervisord.conf
        [[email protected] www]# echo ‘/usr/bin/supervisord -c /etc/supervisord.conf‘ >>/etc/rc.local
    
    5) 配置uwsgi服务:
    
        [[email protected] www]# cat /etc/supervisor.d/uwsgi.ini
        [program:uwsgi]
        command=/usr/bin/uwsgi --socket 127.0.0.1:8090 --chdir /opt/charade/www --module www.wsgi
        
    6)启动 uwsgi 服务:
    
        [[email protected] www]# supervisorctl reload
        Restarted supervisord
        [[email protected] www]# supervisorctl status
        uwsgi                            RUNNING   pid 5303, uptime 0:00:04
    
        说明:
        uwsgi 使用 --socket 方式,表示:通过socket来访问,因此后续可以用 nginx uwsgi 模块来访问。
        uwsgi 使用 --http 方式,表示:可以直接通过 http访问,因此后续可以用 nginx proxy 来访问。
    
    
    7) 使用nginx来处理静态文件和转发请求到后端的uwsgi服务
    
        a)nginx uwsgi
        [[email protected] www]# cat /etc/nginx/conf.d/www.conf 
        server {
            listen 80 default;
            server_name www.test.com;
            charset utf-8;
        
            location /static {
                alias /opt/charade/www/static;
            }
        
            location / {
                uwsgi_pass 127.0.0.1:8090;
                include uwsgi_params;
            }
        }
        
        b)nginx proxy
        [[email protected] www]# cat /etc/nginx/conf.d/www.conf 
        upstream backend {
            server 127.0.0.1:8090;
        }
        
        server {
            listen 80 default;
            server_name www.test.com;
            charset utf-8;
            
            location /static {
                alias /opt/charade/www/static;
            }
        
            location / {
                proxy_pass http://backend;
            }
        }
        
        (centos7)
        [[email protected] www]# systemctl start nginx.service
        [[email protected] www]# systemctl enable nginx.service
时间: 2024-11-03 21:48:49

初探django-演示charade在centos7下的部署的相关文章

CentOS7下安装部署LAMP环境

(1)配置概要:  1. 172.16.100.31主机运行httpd+php服务(php为模块工作模式)  配置两台虚拟主机:wordpress个人博客系统.PHPmyadmin远程控制mysql 2.172.16.100.31主机运行mariadb服务(mysql) (2)配置流程:  首先配置172.16.100.31主机:http服务              1.安装程序:[[email protected]'s linux ~]# yum install httpd php php-

centos7下安装部署tensorflow GPU 版本

系统环境:centos7 1. 安装 Python 2.7 # yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc gcc-c++ make # download and extract Python 2.7 su hdfs cd  ~/Downloads curl -O https://www.python.org/ftp/pytho

Centos7下安装部署MXNET

Centos下安装MXNET(类似于Amazon Linux下安装MXNET),参考官方文档http://mxnet.io/get_started/setup.html#prerequisites, 安装步骤如下: ###################################################################### # This script installs MXNet for Python along with all required depende

Centos7下安装部署Zabbix3.4

主要参考官方文档: https://www.zabbix.com/documentation/3.4/zh/manual/installation/install_from_packages 一.系统基本配置 1.配置IP地址 1)编辑 /etc/sysconfig/network-scripts/ifcfg-eth0文档,修改成如下内容: DEVICE=eth0 ONBOOT=yes BOOTPROTO=none IPADDR=172.17.100.211 NETMASK=255.255.25

Nextcloud私有云盘在Centos7下的部署笔记

搭建个人云存储一般会想到ownCloud,堪称是自建云存储服务的经典.而Nextcloud是ownCloud原开发团队打造的号称是"下一代"存储.初一看觉得"口气"不小,刚推出来就重新"定义"了Cloud,真正试用过后就由衷地赞同这个Nextcloud:它是个人云存储服务的绝佳选择.可以说Nextcloud 是一款自由 (开源) 的类 Dropbox 软件,由 ownCloud 分支演化形成.它使用 PHP 和 JavaScript 编写,支持多

Centos7下zabbix部署(四)定义报警媒介-邮件

1.安装发送邮件工具mailx [[email protected] ~]# yum install mailx -y 2.自定义使用163邮箱为默认发件人(避免被当作垃圾邮件) set from=13311802282@163.com set smtp=smtp.163.com set smtp-auth-user=username set smtp-auth-password=a7260488 set smtp-auth=login 注意:163邮箱需要开启一个授权密码,在非163专用客户端

centos7下gogs部署

1.下载 cd /usr/local/src wget https://dl.gogs.io/0.11.86/gogs_0.11.86_linux_386.tar.gz tar xf gogs_0.11.86_linux_386.tar.gz mv gogs /usr/local/ 2.部署数据库 yum install mysql -y yum install mysql-server -y yum install mysql-devel -y #但是mysql-server安装不了,需要一下

centos7下安装配置django,开始第一个项目;

一.安装(注本人使用的centos7下,有python2和python3,涉及到python3的使用pip3,python3) 安装django: pip3 install django==2.1.2 查看版本号:pip3 show django 检查是否安装成功: 方式一.python3下,检查版本: 方式二.查看django-admin信息,会发现提示command no found; find / -name django-admin,查看路径,然后创建软链接: 这样,再次查看django

在CentOS7下从0开始搭建docker并发布tomcat项目

一切从0开始,我也是个小白: 1.检查你的系统是不是高于3.8的内核,如果没有请升级CentOS7或者Ubuntu 14 #uname -a 2.CentOS7下安装docker #yum -y install docker 3.查看docker版本 #docker version 4.启动docker服务 #docker service start 5.查看本地镜像 #docker images 6.如果没有本地镜像,可以下载一个centos7的镜像来作为基础运行环境 #docker pull