Virtualenv
virtualenv 可以在系统中建立多个不同并且相互不干扰的虚拟环境。
可以避免因为不同的工程依赖不同版本的库,从而引发依赖灾难。
一、Linux下安装、配置virtualenv
1.安装virtualenv
pip3 install virtualenv
#指定清华源下载pip的包
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple virtualenv
2.创建目录
mkdir Myproject
cd Myproject
3.创建独立运行环境-命名
virtualenv --no-site-packages --python=python3 venv1
--no-site-packages # 得到独立第三方包的环境
--python=python3 # 指定解释器是python3
4.进入虚拟环境
source venv/bin/activate # 此时进入虚拟环境(venv)Myproject
5.安装第三方包
- pip3 install django==1.11.18
#此时pip的包都会安装到venv环境下,venv是针对Myproject创建的
6.退出venv环境
- deactivate命令
7.
virtualenv是如何创建“独立”的Python运行环境的呢?原理很简单,就是把系统Python复制一份到virtualenv的环境,用命令source venv/bin/activate进入一个virtualenv环境时,virtualenv会修改相关环境变量,让命令python和pip均指向当前的virtualenv环境。
virtualenvwrapper
virtualenvwrapper管理虚拟环境(virtualenv, 统一管理虚拟环境的目录,并省去了source的步骤。
安装、配置
1.安装virtualenvwrapper
- pip3 install virtualenvwrapper
2.设置Linux的环境变量,每次启动就加载virtualenvwrapper
1)把下面两行代码添加到 ~/.bashrc文件中
vim ~/.bashrc # 进入最低行
2)配置
export WORKON_HOME=~/Envs/ # 设置virtualenv的统一管理目录
export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages' # 添加virtualenvwrapper的参数,生成干净隔绝的环境
export VIRTUALENVWRAPPER_PYTHON=/opt/python36/bin/python3 # 指定python3本体解释器
source /opt/python36/bin/virtualenvwrapper.sh # 执行virtualenvwrapper安装脚本
3)读取文件或重新登录,使得生效
source ~/.bashrc 或 logout
使用
1.创建一个虚拟环境:
mkvirtualenv my_django1 # 会在 ~/Envs中创建 my_django1 文件夹。
2.在虚拟环境上工作:激活虚拟环境my_django1
workon my_django115
# 再创建一个新的虚拟环境
mkvirtualenv my_django2
3.workon还可以任意停止你当前的环境,可以在多个虚拟环境中来回切换
workon django1 或 workon django2
4.手动停止虚拟环境
deactivate
5.删除虚拟环境,需要先退出虚拟环境
rmvirtualenv my_django1
开发环境一致
1.通过命令保证环境的一致性,导出当前python环境的包
pip3 freeze > requirements.txt
这将会创建一个 requirements.txt 文件,其中包含了当前环境中所有包及 各自的版本的简单列表。
可以使用 “pip list”在不产生requirements文件的情况下, 查看已安装包的列表。
2.上传至服务器后,在服务器下创建virtualenv,在venv中导入项目所需的模块依赖
pip3 install -r requirements.txt
linux运行crm项目
1.拷贝crm代码
2.上传到linux服务器
3.解压缩crm代码
4.解决运行crm的环境问题
方式1:
1.通过命令,导出开发机器的所有模块
pip3 freeze > requirements.txt
2.将文件上传到linux,进行安装
pip3 install -i https://pypi.douban.com/simple -r requirements.txt
方式2:
1.在linux服务器 touch requirements.txt
2.将需要的模块复制到requirements文件
3. 进行安装
pip3 install -i https://pypi.douban.com/simple -r requirements.txt
5.准备mysql数据库
yum install mariadb-server mariadb -y
6.启动mariadb数据库
systemctl start mariadb
7.修改Ace_crm的settings.py配置文件,修改mysql的配置项, 以及ALLOW_HOSTS=["*"]
8.创建mysql的数据库 ace_crm
9.再次运行项目
rpm -q mariadb
查看通过yum工具安装的包