概述
在实际的开发工作或上线环境中,由于Python的版本和包库版本比较多,项目的协同开发会比较杂乱,一般我们都会要求对服务器的Python环境进行隔离,本文将带大家搭建一个Python虚拟环境和基于网页的用于交互计算的应用程序Jupyter Notebook。
一、创建普通用户
# 创建一个jupyter用户 adduser jupyter # 添加sudo权限 echo 'jupyter ALL=(ALL) NOPASSWD: ALL' >>/etc/sudoers # 切换jupyter用户 su - jupyter
二、安装Python版本管理器pyenv
# 安装依赖 sudo yum -y install gcc make patch gdbm-devel openssl-devel sqlite-devel readline-devel zlib-devel bzip2-devel # 安装python版本管理工具pyenv curl -L https://gitee.com/zx576/pyenv-installer/raw/master/bin/pyenv-installer | bash # 将pyenv添加到jupyter用户的环境变量中 vim ~/.bashrc: export PATH="/home/jupyter/.pyenv/bin:$PATH" eval "$(pyenv init -)" eval "$(pyenv virtualenv-init -)" # 刷新环境变量配置文件 source ~/.bashrc # 验证pyenv版本 pyenv -v pyenv 1.2.6
三、安装Python3.7.1
# pyenv默认只有3.7.0、3.7-dev、3.8-dev版本的python,我们增加一个python3.7.1版本的配置 vim ~/.pyenv/plugins/python-build/share/python-build/3.7.7 #require_gcc install_package "openssl-1.0.2k" "https://www.openssl.org/source/openssl-1.0.2k.tar.gz#6b3977c61f2aedf0f96367dcfb5c6e578cf37e7b8d913b4ecb6643c3cb88d8c0" mac_openssl --if has_broken_mac_openssl install_package "readline-6.3" "https://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readline if has_tar_xz_support; then install_package "Python-3.7.1" "http://112.73.92.40:8090/python/Python-3.7.1.tgz" ldflags_dirs standard verify_py37 ensurepip else install_package "Python-3.7.1" "http://112.73.92.40:8090/python/Python-3.7.1.tgz" ldflags_dirs standard verify_py37 ensurepip fi # 安装python3.7.1 pyenv install 3.7.1 -v # 查看python本版 pyenv versions
四、pyenv管理Python版本
# 切换python本版 # [global 全局设置、shell 会话设置、local 目录设置(子目录继承)] pyenv local 3.7.1 # virtualenv 虚拟环境(site-packages独立分开) pyenv virtualenv 3.7.1 env37 pyenv local env37
五、安装Python编码工具-iPython&jupyter
# 安装ipython: 支持tab补全的Python shell&jupyter: 支持Python的Web编译器 pip3 install ipython pip3 install jupyter # 使用jupyter前先设置密码 jupyter notebook password eflycloud.com [NotebookPasswordApp] Wrote hashed password to /home/jupyter/.jupyter/jupyter_notebook_config.json # iPyhton生成密钥的方法 ipython >>>from notebook.auth import passwd >>>passwd() # 挂后台启动jupyter notebook setsid jupyter notebook --ip=0.0.0.0 >>/var/log/jupyter.log & # 如需修改jupyter的配置,先生成模板 jupyter notebook --generate-config # 配置路径为~/.jupyter/jupyter_notebook_config.py # 常使用的配置: #c.NotebookApp.ip='*' ## 允许访问名单 #c.NotebookApp.password = u'sha:ce...' ##可用 ipython生成密钥, #c.NotebookApp.open_browser = False ##启动后是否打开browser #c.NotebookApp.port =8888 ## 指定服务端口
基于睿江云服务器搭建的demon
大家可以免费试用(有期限):睿江云demon链接,密码是www.eflycloud.com
end.
好了各位,以上就是这篇文章的全部内容了,我们后面会有常用技术栈相关的文章。感谢大伙能看到这里,如果这个文章写得还不错, 求关注公众号睿江云计算!!! 创作不易,感谢各位的支持和认可,我们下篇文章见!