linux python虚拟环境 相关的
为什么要用虚拟环境
在使用python开发过程中,各种业务需求多了,导致工程任务多了,难免会碰到不同的工程依赖不同版本库的问题,;
或者是在开发的时候不想让物理环境里充斥各种各样的库,引发依赖环境灾难,此时我们需要对于不同的工程使用不
同的虚拟环境来保持开发环境以及宿主环境的清洁,让各个工程任务解耦性更高,独为一体.因此我们要使用
Virtualenv,它是一个可以帮助我们开发管理python环境的绝好工具,virtualenv(分身术--对python解释
器的分身)可以在系统中建立多个不同并且相互不干扰的虚拟环境
python 的虚拟环境
虚拟环境的理解 -- 将当前机器上的解释器作为一个本体,复制出很多个虚拟解释器 物理机上的本体解释器 -- 什么事也不做
分身1 : 运行 django
分身2 : 运行 django 1.11.18
virtualenv 可以在系统中创建多个不同并且互相不干扰的虚拟环境
安装配置虚拟环境 --- virtualenv
.安装配置虚拟环境
注意,在物理环境下,安装
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple virtualenv
2.使用虚拟环境的命令,创建多个python解释器的分身 ,用于运行第一个 django 2.0版本
virtualenv --no-site-packages --python=python3 venv1 这是名字
--no-site-packages 保证虚拟环境,没有任何的第三方包
--python=python3 指定当前机器的 python3 作为本体
3.再创建虚拟环境2 ,用于运行django1.11.18
virtualenv --no-site-packages --python=python3 venv2
4.打开两个 xshell终端,分别激活 虚拟环境
终端1
source /opt/venv1/bin/activate
确保在虚拟环境1地下,看一下命令的绝对路径
which python3
which pip3
终端2
source /opt/venv2/bin/activate
5.分别创建两个django 项目,运行
6.一个linux服务器上,运行2个django版本 浏览器上运行出效果
7.退出虚拟环境 deactivate
更强悍的 virtualenvwrapper工具
安装安装virtualenvwrapper工具
pip3 install virtualenvwrapper 配置环境变量,每次开机就加载 virtualenvwrapper
步骤:
打开个人用户配置文件
vim ~/.bashrc
回到最底行
添加环境变量
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.复制如上配置,写入到,~/.bashrc 个人配置文件中,每次登陆就加载
4.退出当前回话,重新登陆,加载 虚拟环境工具
5.虚拟环境工具的命令
创建一个虚拟环境:
mkvirtualenv my1
这会在 ~/Envs 中创建 my1 文件夹
在虚拟环境上工作: 激活虚拟环境
workon my1
virtualenvwrapper 提供环境名字的tab补全功能。
workon还可以任意停止你当前的环境,可以在多个虚拟环境中来回切换
也可以手动停止虚拟环境
deactivate
删除虚拟环境,需要先退出虚拟环境
rmvirtualenv my_django115
-- 其他命令 --
1.lsvirtualenv 列举出所有的虚拟环境 2.cdvirtualenv 导航到当前虚拟环境中的目录 3.cdsitepackages 直接进入sitepackages 目录 4.lssitepackages 展示sitepackages中的内容
CRM 虚拟环境运行的实例
准备代码 lrzsz -- 拖动工具
代码打包移植
解压 unzip 文件名
解决运行的环境问题
方式一:
通过命令,导出开发机上的所有模块
pip3 freeze > requirements.txt
2 移植这个 txt 到linux,进行安装
pip3 install -i https://pypi.douban.com/simple -r requirements.txt
会一行行读取文件信息,下载并且执行
方式二:
1 touch requirements.txt 文件
2 vim requirements.txt 写进去
Windows cmd (pip list) 里的数据
3 pip3 install -i https://pypi.douban.com/simple -r requirements.txt
3 准备数据库
yum install mariadb-server mariadb -y
4 启动 mariadb 数据库
systemctl start mariadb
5 修改 CRM 的settings.py 配置文件,
ALLOWED_HOSTS = [ '*']
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'ace_crm', 要改名字 前提数据库创建一个database,且执行了python3 manage.py migrate
'HOST': '127.0.0.1',
'PORT': 3306,
'USER': 'root',
'PASSWORD': '123',
}
}
6 执行
python3 manage.py runserver 0.0.0.0:8000
linux python虚拟环境 相关的的更多相关文章
- python 虚拟环境相关命令
1.总是记不住一些关于创建虚拟环境得命令,特在自己得博客里记录一下自己常用得命令: virtualenv -p C:\Python36\python D:\virtual\Envs\AssetScan ...
- python虚拟环境相关设置备忘
sudo pip install virtualenv #安装虚拟环境 sudo pip install virtualenvwrapper #安装虚拟环境管理工具nano ~/.bashrc #修 ...
- linux系统下Python虚拟环境的安装和使用
前言:进行python项目开发的时候,由于不同的项目需要使用不同的资源包和相关的配置,因此创建多个python虚拟环境,在虚拟环境下开发就显得很有必要. 安装虚拟环境 步骤: 打开Linux终端(快捷 ...
- Linux下安装python虚拟环境(virtualenv,vritulaenvwrapper)
一.virtualenv virtualenv是如何创建"独立"的Python运行环境的呢? 原理很简单,就是把系统Python复制一份到virtualenv的环境,用命令sour ...
- Python 虚拟环境 | Mac/Linux下如何避坑安装配置Virtualenv
1.为什么要使用虚拟环境 在Python中,不同的应用可能需要用到不同版本的第三方包,而这些第三方包被统一存放到目录site-packages中,不同版本的包容易相互覆盖,如安装Django 2.1时 ...
- Linux创建Python虚拟环境
Linux创建Python虚拟环境 安装 pip install virtualenv 基本使用 为一个工程创建一个虚拟环境: $ cd my_project $ virtualenv venv #v ...
- linux设置python虚拟环境的环境变量
针对 linux系统中 python虚拟环境 设置环境变量 2种方法: 1.在建好的虚拟环境的 venv/bin/active 文件中,写入需要的环境变量,再进入虚拟环境: 如 配置文件路径 JERR ...
- ubuntu系统下Python虚拟环境的安装和使用
ubuntu系统下Python虚拟环境的安装和使用 前言:进行python项目开发的时候,由于不同的项目需要使用不同的资源包和相关的配置,因此创建多个python虚拟环境,在虚拟环境下开 ...
- 二、python框架相关知识体系
Django框架 1.django框架.flask框架和Tornado框架的区别? django框架,内置组件多,自身功能强大,是一个大而全的框架,ORM.Admin.中间件.Form.ModelFr ...
随机推荐
- MySQL crash-safe replication【转载】
本文来自david大神的博客,innodb技术内幕的作者. http://insidemysql.blog.163.com/blog/static/202834042201385190333/ MyS ...
- List与Array互相转换
List转换为Array可以这样处理: ArrayList<String> list=new ArrayList<String>(); String[] strings = n ...
- Python基础-编码与解码
一.什么是编码 编码是指信息从一种形式或格式转换为另一种形式或格式的过程. 在计算机中,编码,简而言之,就是将人能够读懂的信息(通常称为明文)转换为计算机能够读懂的信息.众所周知,计算机能够读懂的 ...
- git flow 使用步骤
Mac安装git-flow:brew install git-flow 克隆新代码:git clone git@gitlab.xxx.cn:abc/test.git 切换到远程的develop分支(很 ...
- Django 框架 Form组件
一.Form组件简介 Form组件是django中一个非常强大的组件,在处理服务端和前端的交互上大大的提高了开发人员的开发速度. Form组件的功能: 用于处理前后端的数据认证(显示错误信息) 用于生 ...
- spring + mybatis配置及网络异常设置
Spring引入mybatis <beans xmlns="http://www.springframework.org/schema/beans" xmlns:contex ...
- HTTPS安全不?
首先,它是什么?我的理解是一开始进行SSL握手,商量好将要使用哪些加密算法来通讯,或者加密方法后使用非对称的加密方法,交互一下随机数,加上一个pre-master-secrect的,然后服务端利用私钥 ...
- react 全局公共组件-----动态弹窗 (dialog)
react 的时候,总是会用到弹窗,并且各种各样的,一般来说,组件层级嵌套之后,就会出现 z-index层级覆盖的问题 这个时候,就需要一个公共的弹出层,然后我们将需要展示的组件,放到弹出层里面 下面 ...
- 执行perl xttdriver.pl报错Can't locate Getopt/Long.pm in @INC
环境:AIX 6.1 + Oracle 10.2.0.4 现象:在做xtts测试时,源环境使用Oracle自带的perl执行xttdriver.pl报错如下: $ $ORACLE_HOME/perl/ ...
- Flume:sink.type=hive
Flume以Kafka为Source,以Hive为Sink进行数据转存. 业务背景:公司要求将某四川城市的卡口数据实时接入大数据平台中,历史数据可以通过Hive进行Load,也就是增量数据的对接问题. ...