微软 centos google nginx HTML5 Firefox Windows wordpress shell Android java 开源 mysql Ubuntu linux命令 apache linux Python php 程序员

128M vps上部署django应用的步骤

服务器是128M openvz的 vps,os是 Ubuntu 32位 11.04

安装基础软件

配置python

安装easy_install

配置python 第三方包

如果安装mysql-python的时候提示找不到mysql_config

find / -name mysql_config找到之后把它加入到你Shell 的$PATH变量中,然后继续执行easy_install MySQL-python

测试安装效果,运行python shell,输入import Image,如果报错,那么要在代码中使用 from PIL import Image

创建数据库

用root登陆mysql mysql -uroot -p执行下列sql

create database `lutaf` default character set utf8;
GRANT ALL PRIVILEGES ON lutaf.* TO '你的数据库用户名'@'localhost' IDENTIFIED BY '你的数据库密码' WITH GRANT OPTION;

配置memcached

128M的vps内存非常小,memcached内存设置为8M vi /etc/rc.local 加入下面这行

/usr/bin/memcached -u www -d -m8 -l 127.0.0.1 -p 11211

配置nginx

编辑nginx.conf,把include /your-www-path/lutaf/lutaf.conf加入到 http{}里面

部署代码

我的代码是通过svn管理,这样部署比较简单,进入nginx的www目录

mkdir lutaf
svn co $your_svn_url$ lutaf
chown www.www lutaf -R
chmod 777 lutaf/store -R
  • 配置setting.py
  • 关闭debug
  • 填写正确的数据库链接信息
  • 填写cache地址
  • 初始化数据库结构: manage.py syncdb

编写django进程管理脚本

这个很简单,本站使用runfcgi部署,想了解如何使用 runfcgi ,输入 manage.py runfcgi help 即可

启动命令:python ./manage.py runfcgi --settings={project}.settings_production maxchildren=10 maxspare=5 minspare=2 method=prefork socket=/tmp/python.sock pidfile=/tmp/django.pid

关闭命令: kill -9cat /tmp/django.pid``

延伸阅读

评论