pyenv使用python
主要仍是作一个记录,简单介绍一下pyenv的用法。有不妥的地方,高手请指正。linux
这是我当前系统python
版本,nginx
#pyenv versions * system (set by /root/.pyenv/version) 2.7.9
使用的是python2.6.6
web
#python -V Python 2.6.6
建立一个python 2.7.9
的环境,名字叫site
apache
#pyenv virtualenv 2.7.9 site New python executable in /root/.pyenv/versions/site/bin/python2.7 Also creating executable in /root/.pyenv/versions/site/bin/python Installing setuptools, pip...done. Ignoring indexes: https://pypi.python.org/simple/ Requirement already satisfied (use --upgrade to upgrade): setuptools in /root/.pyenv/versions/site/lib/python2.7/site-packages Requirement already satisfied (use --upgrade to upgrade): pip in /root/.pyenv/versions/site/lib/python2.7/site-packages Cleaning up... #pyenv versions * system (set by /root/.pyenv/version) 2.7.9 site
建立一个工做目录/workspace/site
,并将site
写到这个目录下的一个隐藏文件.python-version
文件里,这样当你每次进入这个目录的时候,将会自动执行activate site
启动你这个项目所须要调用的python环境,当你退出这个目录时,也会自动执行deactivate site
。=^_^= 很方便吧~!flask
#mkdir -p /workspace/site #echo site > /workspate/site/.python-version #cd /workspace/site/ pyenv-virtualenv: activate site (site) #python -V Python 2.7.9 (site) #cd .. pyenv-virtualenv: deactivate site #python -V Python 2.6.6
如今咱们来安装flask
,原本打算跟上一篇同样一次部署一堆模块,可是想一想仍是一点点来吧,稳扎稳打。
稍微提醒一下,安装任何模块尽可能在你要运行的环境中安装,避免模块装错环境的状况。安装完之后进入python
,并import flask
检测是否导入成功。app
#pip install Flask==0.10.1 Collecting Flask==0.10.1 Using cached Flask-0.10.1.tar.gz Collecting Werkzeug>=0.7 (from Flask==0.10.1) Using cached Werkzeug-0.10.4-py2.py3-none-any.whl Collecting Jinja2>=2.4 (from Flask==0.10.1) Using cached Jinja2-2.7.3.tar.gz Collecting itsdangerous>=0.21 (from Flask==0.10.1) Using cached itsdangerous-0.24.tar.gz Collecting markupsafe (from Jinja2>=2.4->Flask==0.10.1) Using cached MarkupSafe-0.23.tar.gz Installing collected packages: Werkzeug, markupsafe, Jinja2, itsdangerous, Flask Running setup.py install for markupsafe Running setup.py install for Jinja2 Running setup.py install for itsdangerous Running setup.py install for Flask Successfully installed Flask-0.10.1 Jinja2-2.7.3 Werkzeug-0.10.4 itsdangerous-0.24 markupsafe-0.23 (site) #python Python 2.7.9 (default, Feb 10 2015, 01:40:34) [GCC 4.4.7 20120313 (Red Hat 4.4.7-11)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import flask >>>
一个最小的应用python2.7
这是官方文档提供的代码curl
from flask import Flask app = Flask(__name__) @app.route('/') def hello_world(): return 'Hello World!' if __name__ == '__main__': app.run()
编辑一个run.py
文件,并把官方给的代码抄上,这里给了一个提示这里文件的命名不要叫flask.py
,避免导入模块时,把当前flask.py
当成模块导进去。测试
#python run.py * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit) #curl 'http://127.0.0.1:5000' Hello World!(site) #curl "http://192.168.1.21:5000" curl: (7) couldn't connect to host
应用已经跑起来了,中止服务直接CTRL+C
就能够了,如今只是跑在本地的5000
端口上,因此你只能经过127.0.0.1:5000
本地进行访问,从上边测试能够看到经过网卡配置的192.168.1.21
是没法进行访问的。你可使用一些web服务进行代理转发(例如:apache,nginx)
,也能够对run()
启动参数进行修改,使其监听全部ip
地址
app.run(host='0.0.0.0', port=80, debug=True)
咱们传递三个参数过去host
配置0.0.0.0
,意思是全部ip
均可以进行访问,服务端口是80
,开启debug
模式。重启服务
#python run.py * Running on http://0.0.0.0:80/ (Press CTRL+C to quit) * Restarting with stat
能够看到服务启动后的运行提示都变了,这样咱们就职意访问了。
#curl "http://127.0.0.1" Hello World! #curl "http://192.168.1.21" Hello World! #