如何在Velinux上使用Python 3 虚拟环境?

计算操作系统技术服务知识库
问题描述

如何在运行VeLinux的实例上使用Python 3虚拟环境

问题分析

要为VeLinux创建隔离的Python 环境,需要执行以下操作: 1.安装Python 3。 2.在用户主目录下安装虚拟环境。 3.激活该环境,然后安装相关库。

解决方案

1、使用SSH连接到ECS Linux实例,并执行apt-get update刷新程序包索引,并运行apt list,查看是否安装python3。 已安装的输出如下:

root@i-2udbbtytcx3gv6bvmhzb:~# apt  list   | grep  python3
....
python3.7-dbg/orion 3.7.3-2+deb10u3 amd64
python3.7-dev/orion,now 3.7.3-2+deb10u3 amd64 [installed,automatic]
python3.7-doc/orion 3.7.3-2+deb10u3 all
python3.7-examples/orion 3.7.3-2+deb10u3 all
python3.7-minimal/orion,now 3.7.3-2+deb10u3 amd64 [installed,automatic]
python3.7-venv/orion,oldstable,now 3.7.3-2+deb10u3 amd64 [installed,automatic]
python3.7/orion,oldstable,now 3.7.3-2+deb10u3 amd64 [installed,automatic]
python3/orion,oldstable,now 3.7.3-1 amd64 [installed]

root@i-2udbbtytcx3gv6bvmhzb:~# whereis python3
python3: /usr/bin/python3.7 /usr/bin/python3 /usr/bin/python3.7-config /usr/bin/python3.7m-config /usr/bin/python3.7m /usr/lib/python3.7 /usr/lib/python3 /etc/python3.7 /etc/python3 /usr/local/lib/python3.7 /usr/include/python3.7 /usr/include/python3.7m /usr/share/python3 /usr/share/man/man1/python3.1.gz

未安装不会有输出,如未安装则先安装python3,命令:apt-get install python3。 2、在家目录下创建虚拟环境。 以下命令创建虚拟环境的应用程序目录。可以将app进行更改。

root@i-2udbbtytcx3gv6bvmhzb:~# python3 -m venv app/env

root@i-2udbbtytcx3gv6bvmhzb:~# ls -al app
total 12
drwxr-xr-x  3 root root 4096 May  6 02:42 .
drwx------ 20 root root 4096 May  6 02:42 ..
drwxr-xr-x  6 root root 4096 May  6 02:42 env

3、激活虚拟环境。 在app文件夹下的bin目录中查找 activate文件进行激活,如下:

root@i-2udbbtytcx3gv6bvmhzb:~# source app/env/bin/activate
(env) root@i-2udbbtytcx3gv6bvmhzb:~# 

更新pip,如下:

(env) root@i-2udbbtytcx3gv6bvmhzb:~# pip install pip --upgrade
Collecting pip
  Using cached https://files.pythonhosted.org/packages/4d/16/0a14ca596f30316efd412a60bdfac02a7259bf8673d4d917dc60b9a21812/pip-22.0.4-py3-none-any.whl
Installing collected packages: pip
  Found existing installation: pip 18.1
    Uninstalling pip-18.1:
      Successfully uninstalled pip-18.1
Successfully installed pip-22.0.4

查看虚拟环境中安装的库,如下:

(env) root@i-2udbbtytcx3gv6bvmhzb:~/app/env/bin# pip list
Package       Version
------------- -------
pip           18.1   
pkg-resources 0.0.0  
setuptools    40.8.0 

4、安装requests库,进行测试。 安装requests,如下:

(env) root@i-2udbbtytcx3gv6bvmhzb:~# pip install requests
Collecting requests
  Using cached requests-2.27.1-py2.py3-none-any.whl (63 kB)
Collecting charset-normalizer~=2.0.0
  Downloading charset_normalizer-2.0.12-py3-none-any.whl (39 kB)
Collecting certifi>=2017.4.17
  Downloading certifi-2021.10.8-py2.py3-none-any.whl (149 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 149.2/149.2 KB 20.4 kB/s eta 0:00:00
Collecting idna<4,>=2.5
  Using cached idna-3.3-py3-none-any.whl (61 kB)
Collecting urllib3<1.27,>=1.21.1
  Using cached urllib3-1.26.9-py2.py3-none-any.whl (138 kB)
Installing collected packages: certifi, urllib3, idna, charset-normalizer, requests
Successfully installed certifi-2021.10.8 charset-normalizer-2.0.12 idna-3.3 requests-2.27.1 urllib3-1.26.9

在python环境下导入requests库,进行测试,如下:

(env) root@i-2udbbtytcx3gv6bvmhzb:~# python
Python 3.7.3 (default, Jan 22 2021, 20:04:44) 
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import requests
>>> r = requests.get("https://baidu.com")
>>> print(r.text)
<!DOCTYPE html>
<html> 
......

退出虚拟环境,如下:

(env) root@i-2udbbtytcx3gv6bvmhzb:~/app/env/bin# deactivate
root@i-2udbbtytcx3gv6bvmhzb:~/app/env/bin# 

如要实现登录自动激活虚拟环境,可以通过配置 ~/.bashrc 文件来实现,如下:

root@i-2udbbtytcx3gv6bvmhzb:~#echo "source ${HOME}/app/env/bin/activate" >> ${HOME}/.bashrc

如果您有其他问题,欢迎您联系火山引擎技术支持服务

293
0
0
0
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论