美文网首页
python项目环境搭建(pyenv+virtualenv)

python项目环境搭建(pyenv+virtualenv)

作者: zoulala | 来源:发表于2017-12-25 15:10 被阅读0次

    参考博客

    在centos上操作

    1、先安装curl 和 git

    # yum install curl git-core

    2、接下来安装pyenv

    # curl -L https://raw.github.com/yyuu/pyenv-installer/master/bin/pyenv-installer | bash

    这个命令会把pyenv安装到当前用户的 ~/.pyenv目录下.

    同时, 我们还需要把下面代码存到~/.bashrc文件中:

    # vim ~/.bashrc

    export PYENV_ROOT="${HOME}/.pyenv"

    if [ -d "${PYENV_ROOT}" ] ; then

            export  PATH="${PYENV_ROOT}/bin:${PATH}"

            eval  "$(pyenv  init -)"

    fi

    这段代码的作用主要是指明pyenv的位置, 以便以后可以直接在命令行里面运行pyenv命令。 保存在~/.bashrc 文件中是为了每次用户登陆后自动生效。所以如果你是第一次运行命令并且没有注销的话, 这一段是不会生效的, 我们还需要运行下面的命令令其生效

    # source ~/.bashrc

    然后就可以直接在命令行里面敲pyenv了。

    3. 安装某个版本的python

    首先我们可以查看一下有哪些版本的python 可以安装

    # pyenv install  --list

    接下来, 我们安装 python3.5.3版本

    #  pyenv  install  3.5.3

    安装完毕后, 我们可以查看安装的情况

    修改增加:

    (如果安装过程出现类似如下错误:

    checking for--enable-universalsdk... nochecking for --with-universal-archs... 32-bitchecking MACHDEP... linuxchecking for --without-gcc... nochecking for gcc... nochecking for cc... nochecking for cl.exe... no)

    原因是 源码编译,提示缺少gcc cc cl.exe解决方案centos:   

     yum install -y gcc glibc

    yum -y install gcc+ gcc-c++

    ubuntu:apt-get update gccapt-get install g++ 

    继续安装 若出现类似如下:

    Installing Python-3.4.4...

    WARNING: The Python bz2 extension was not compiled.Missing the bzip2 lib?

    WARNING: The Python readline extension was not compiled.Missing the GNU readline lib?

    ERROR: The Python ssl extension was not compiled. Missingthe OpenSSL lib?

    Please consult to the Wiki page to fix the problem.https://github.com/yyuu/pyenv/wiki/Common-build-problems BUILD FAILED (CentOSLinux 7 using python-build 20160509-25-g4c654d7) Inspect or clean up theworking tree at /tmp/python-build.20160607105740.3166 Results logged to/tmp/python-build.20160607105740.3166.log Last 10 log lines: (cd/root/.pyenv/versions/3.4.4/share/man/man1; ln -s python3.4.1 python3.1) if test"xupgrade" != "xno" ; then \ case upgrade in \ upgrade)ensurepip="--upgrade" ;; \ install|*) ensurepip="" ;; \ esac;\ ./python -E -m ensurepip \ $ensurepip --root=/ ; \ fi Ignoring ensurepipfailure: pip 7.1.2 requires SSL/TLS 

    则安装如下依赖:

    yum install readline readline-devel readline-static -y

    yum install openssl openssl-devel openssl-static -y

    yum install sqlite-devel -y

    yum install bzip2-devel bzip2-libs -y 

    出现以上问题可参考(http://blog.sina.com.cn/s/blog_76923bd80102w9zw.html;http://blog.csdn.net/foryouslgme/article/details/51683654;https://www.jianshu.com/p/228cd025a368;)继续安装python安装完毕!

    #  pyenv versions

    输出结果如下:

    * system (set by /home/tony/.pyenv/version)

    3.5.3

    4、切换版本

    *指向的代表当前使用的版本,通过下面命令来进行版本切换

    # pyenv global 3.5.3

    如果要卸载某个版本的python, 可以这样:

    # pyenv uninstall x.x.x

    5. 利用virtualenv 创建虚拟python环境

    现在我们已经安装了多个python版本,但是这还不够, 这时候我们可以使用virtualenv来创建虚拟python环境

    virtualenv本是一个独立的工具,官网在这里:https://pypi.python.org/pypi/virtualenv

    幸运的是,如果你是安装我们前面的方式安装pyenv的,那它已经帮我们以plugin的形式安装好了virtualenv, 我们只要使用就好了

    首先我们创建一个3.5.3的虚拟环境

    # pyenv virtualenv  3.5.3  env35

    这条命令在本机上创建了一个名为env35的python虚拟环境,这个环境的真实目录位于:~/.pyenv/versions/

    注意,命令中的 ‘3.5.3’ 必须是一个安装前面步骤已经安装好的python版本, 否则会出错。

    然后我们可以继续通过 ‘pyenv versions’ 命令来查看当前的虚拟环境, 结果如下:

    * system (set by /home/tony/.pyenv/version)2.7.1

    3.5.3

    env35

    这里我们可以看到, 除了已经安装的python版本, 我们多出了一个env35的python虚拟环境

    6. 切换和使用新的python虚拟环境

    切换到新的虚拟环境的命令为

    # pyenv activate env35

    接下来我们的python环境就已经切换到3.5.3的虚拟环境了, 运行 ‘python’ 命令认证

    (env35)tony@ubuntu:~$ python

    Python3.5.3(r271:86832, May92014,01:07:17)

    [GCC4.8.2] on linux3

    Type"help","copyright","credits"or"license"formoreinformation.>>>

    可以看到, python版本已经是3.5.3 而且是在虚拟环境之中 (env35)

    下面基本上你就可以在这个虚拟环境里面为所欲为了 :) 再也不用担心系统路径被搞乱的问题了。

    如果要切换回系统环境, 运行这个命令即可

    # pyenv deactivate

    那如果要删除这个虚拟环境呢? 答案简单而且粗暴,只要直接删除它所在的目录就好:

    # rm -rf  ~/.pyenv/versions/env35/

    至此环境搭建大功告成!

    7、使用pip安装项目相关依赖库

    上面安装的Python版本自带pip安装工具,,如下项目使用虚拟环境env35,项目目录如下

    先启动虚拟环境,然后切换到项目目录下,进行pip安装

    #  pyenv activate env35

    # cd 项目目录

    # pip install -r requirements.txt

    8、启动项目

    安装完各个依赖库后,进行如下命令启动该项目

    python manage.py runserver -h 0.0.0.0 -p 8080  -threaded

    相关文章

      网友评论

          本文标题:python项目环境搭建(pyenv+virtualenv)

          本文链接:https://www.haomeiwen.com/subject/ueelgxtx.html