[置顶] centos6.4安装Python web开发+生产环境

1.概述

centos6.4安装Python, setuptool, pip, virtualenv, mysql, django, libevent, memcache, nginx, git, beyond compare, jdk, eclipse, pydev


2.参考命令

centos6.4自带Python2.6, 反正2.x区别不大,也就将就着用了.

1.安装setuptool

wget --no-check-certificate  https://bootstrap.pypa.io/ez_setup.py
python ez_setup.py

当然也可以去下载setuptool源码,解压后编译安装

ez_setup.py这个文件一直在更新,如果安装后命令行输入easy_install -h报乱七八糟错误, 没别的,版本不匹配.网上的始终是最新版本,而本地Python版本低,不是3.X.

解决办法:vim ez_setup.py

找到 DEFAULT_VERSION = "5.4"这一行, Python26/27都改为 DEFAULT_VERSION = "3.6"后重新运行python ez_setup.py.

python27或以下用5.4的setuptools无限苦逼,说多了都是泪

2.安装pip

wget --no-check-certificate http://pypi.python.org/packages/source/p/pip/pip-1.0.2.tar.gz
tar zxf pip-1.0.2.tar.gz
cd pip-1.0.2
python setup.py install

同easy_install, 安装完后输入pip -h, 如果报错乱七八糟,找不到这找不到那,一样是版本问题.Python26/27就都用1.0.2吧,别去试坑了.

centos6.4升级到Python27, pip>=1.5.6很可能会ImportError: No module named _ctypes(为什么说是很可能呢,因为我们这除了一个搞yum的大神遇到这个错误花了十几分钟改改yum重编译Python27搞定了,其余的都遇到这个错,换较低的版本了.咱不能跟yum大神比,所以谨慎断言,用很可能)


3.安装virtualenv

pip install virtualenv

可以指定版本1.11.6      pip install virtualenv==1.11.6(暂未发现virtualenv会有版本问题,不过指定了没坑)

pip install virtualenv==1.8.2貌似更适合Python26/27


4.创建一个虚拟环境,并激活
virtualenv pydj14 --no-setuptools
source pydj14/bin/activate

参数--no-setuptools是必要的, 因为virtualenv自带setuptools和pip,上面我们自己已经安装了这两个,不能保证与virtualenv自带的两个版本一致。如果出现不一致,virtualenv自带的覆盖我们上面安装的,而它自带的未必合适Python版本.所以加这个参数,不要它自带的,直接使用上面我们成功安装的,省些时间去试版本的坑。

使用--no-setuptools参数后,新建的虚拟环境里面没有pip setuptools,激活虚拟环境,再次安装上面setuptools pip,此时这两个玩意就是安装到虚拟环境中。

比如 virtualenv1.11.6 自带 setuptools3.6 刚好与上面的一致,自带pip1.5.6(上面已经说了centos6.4  python27会报错),所以不加--no-setuptools参数,会报错

Installing setuptools, pip...

.....一大堆堆栈信息....

ImportError: No module named _ctypes

不想在虚拟环境再安装一遍,就想使用虚拟环境 自带的,那也行指定版本pip install virtualenv==1.8.2    这个版本26 27都兼容很棒


5.安装mysql

wget http://dev.mysql.com/get/Downloads/MySQL-5.5/MySQL-5.5.17-1.linux2.6.x86_64.tar
tar -xf MySQL-5.5.17-1.linux2.6.x86_64.tar
yum erase mysql-libs
rpm -ivh MySQL-server-5.5.17-1.linux2.6.x86_64.rpm
rpm -ivh MySQL-devel-5.5.17-1.linux2.6.x86_64.rpm  (安装devel才会有mysql_config文件,否则MySQL-python报错找不到此文件)
rpm -ivh MySQL-client-5.5.17-1.linux2.6.x86_64.rpm 可选
chown -R mysql:mysql /var/lib/mysql
/etc/init.d/mysql start          启动
mysqladmin -uroot password 'ppp'
/usr/bin/mysqladmin -u root -p shutdown      关闭 

开机启动可选:
/sbin/chkconfig --add mysql
数据库目录 /var/lib/mysql/
配置文件 /usr/share/mysql
相关命令 /usr/bin      (mysqladmin mysqldump等命令)

启动脚本 /etc/rc.d/init.d/


5.**如果不想安装MySQL,仅仅只要MySQL_python

yum -y install rpm-build gcc-c++ 

yum install mysql mysql-devel 

yum install python_devel

wget http://download.sourceforge.net/sourceforge/mysql-python/MySQL-python-1.2.3.tar.gz 
编辑 site.cfg ,把 mysql_config 那一行取消注释,并改为: 

mysql_config = /usr/lib64/mysql/mysql_config 

python setup.py build 

python setup.py install 






6.安装django开发环境

pip install south
pip install --download MySQL-python  解压后修改setup_posix.py 将mysql_config路径改为/usr/bin/mysql_config
参数可能有细微变化,目的是只下载不安装,有可能参数是--no-install,据pip版本而定。  pip install -h看一下就行,只下不装,改文件,再安装
pip install python-memcached
pip install django==1.4.5
pip install uwsgi
7.安装libevent
yum install gcc
yum install gcc-c++ libstdc++-devel
yum install zlib-devel
wget http://monkey.org/~provos/libevent-1.4.14b-stable.tar.gz
tar zxvf libevent-1.4.14b-stable.tar.gz  
cd libevent-1.4.14b-stable  
./configure --prefix=/usr/local/libevent/  
make && make install 
下面二选一 
ln -s /usr/local/libevent/lib/libevent-1.4.so.2 /lib/libevent-1.4.so.2        32位系统
ln -s /usr/local/libevent/lib/libevent-1.4.so.2 /lib64/libevent-1.4.so.2      64位系统
8.安装memcache
wget http://www.danga.com/memcached/dist/memcached-1.2.5.tar.gz
tar zxvf memcached-1.2.5.tar.gz
cd memcached-1.2.5
 ./configure --prefix=/usr/local/memcached/ --with-libevent=/usr/local/libevent/  
make && make install
/usr/local/memcached/bin/memcached -d -m 64 -u root -l 127.0.0.1 -p 11211 -c 128 -P /tmp/memcached.pid
9.安装nginx
wget http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm
rpm -ivh nginx-release-centos-6-0.el6.ngx.noarch.rpm
yum install nginx
修改防火墙
vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
service iptables restart
配置目录:/etc/nginx/
PID目录:/var/run/nginx.pid
错误日志:/var/log/nginx/error.log
访问日志:/var/log/nginx/access.log
默认站点目录:/usr/share/nginx/html
启动nginx:nginx
重启nginx:killall -HUP nginx
测试nginx配置:nginx -t

10.安装git

yum -y install zlib-devel openssl-devel perl cpio expat-devel gettext-devel
yum install autoconf
yum install git
11.安装BeyondCompare
http://www.scootersoftware.com/download.php下载rpm包安装

12.git 配置bc3

[color]
        ui = true
[core]
        editor = vim

[diff]
        tool = bc3
[difftool "bc3"]
        cmd = bcompare $LOCAL $REMOTE
[difftool]
        prompt = false
13.Python web开发环境
下载jdk1.7rpm包, rpm命令安装

下载eclipse 解压,mv至/usr/local目录下,配置桌面启动图标如下代码


注意jdk版本与eclipse版本, eclipse4.3及以前可以使用jdk1.6(推荐jdk1.6安装3.3--3.7的eclipse), eclipse4.4起必须jdk1.7及以上.

注意jdk与eclipse位数一致,最好与操作系统一致,都用64位,32位。从上面安装命令可以看出,本文章是centos6.4 64位


桌面添加eclipse启动图标(centos6.4添加后桌面不会立即出现该图标,仅仅放在桌面备选项中,手动点击左上角,应用,找到eclipse,右键,添加至桌面)

vim /usr/share/applications/eclipse.desktop

输入如下
[Desktop Entry]
Encoding=UTF-8
Name=Eclipse
Comment=Eclipse IDE
Exec=/usr/local/eclipse/eclipse
Icon=/usr/local/eclipse/icon.xpm
Terminal=false
Type=Application
Categories=GNOME;Application;Development;
StartupNotify=true

安装pydev

下载源码包解压至eclipse dropins目录,或者在线安装(3.7以下版本eclipse在线安装很可能失败),略去

仅需要注意pydev2.X jdk1.6或以上,但1.8有点小问题。pydev3必须jdk1.7以上。


具体mysql配置,nginx配置, memcache配置就各自百度谷歌吧.

你可能感兴趣的:(Web,centos,python,生产开发环境搭建)