运维笔记--Docker环境ubuntu系统安装指定版本python[3.6]

场景描述:

直接安装出现如下异常:

root@ae2d02e458f3:/home# apt-get install python3.6
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package python3.6
E: Couldn't find any package by glob 'python3.6'
E: Couldn't find any package by regex 'python3.6'

按照如下步骤安装,同时解决上述异常:

1. 先执行

sudo apt-get install python-software-properties
sudo apt-get install software-properties-common

2. 添加python3.6 到apt仓库:

sudo add-apt-repository ppa:jonathonf/python-3.6

运维笔记--Docker环境ubuntu系统安装指定版本python[3.6]

3. 更新系统

sudo apt-get update

4. 执行安装

sudo apt-get install python3.6

5. 验证

运维笔记--Docker环境ubuntu系统安装指定版本python[3.6]

6. 修改python命令默认指向python3.6:

上边我们可以看到,系统输入python, python3, python3.6 会分别进入到不同的环境,这里我们修改成输入python直接进入python3.6环境。

(1)查看默认python指向:

sudo ls -l /usr/bin | grep python 

运维笔记--Docker环境ubuntu系统安装指定版本python[3.6]

(2)删除原有python软连接

sudo rm /usr/bin/python

(3) 建立python到python3.6新的软链接

sudo ln -s /usr/bin/python3.6 /usr/bin/python

(4) ubuntu 安装pip:直接安装python3版本pip

sudo apt-get install python3-pip     ---这里也有个小坑!如果你写的是python3-pip 执行安装后,如果系统自带了python3.5,其实pip这时是装在了python3.5环境下了!!!
sudo apt-get install python3.6-pip   ---正确的指定方式,应该把小版本号也加上!

(5) 建立pip到pip3的软连接

sudo ln -s /usr/bin/pip3 /usr/bin/pip

这里需要注意,默认安装的pip版本是0.8几,如果不小心做了pip升级到19或者更高,可能会出现pip默认路径改变的情况,这样会导致上边的软连接失效!

查看pip版本:pip --version

处理方式可以参考:

https://www.cnblogs.com/hellojesson/p/8979926.html

(6) 补充两个pip常用的安装命令

当前项目环境生成requirements.txt文件:
pip freeze > requirements.txt 安装requirements.txt中的依赖包:
pip install -r requirements.txt

举例:假如我们requirements.txt中内容如下:

pymssql==2.1.4
requests==2.21.0
setuptools==40.8.0

系统环境下,直接运行:pip install -r requirements.txt  就可以将上边指定版本的3个依赖包依次安装上。

上一篇:Ubuntu下超实用的命令


下一篇:zstack源码编译安装(1.7.x版本)