系统相关
首页 > 系统相关> > docker centos 镜像中安装python36详解!生成centos+python36的基础镜像

docker centos 镜像中安装python36详解!生成centos+python36的基础镜像

作者:互联网

获取centos镜像
docker pull centos:7.4.1708


启动并进入centos的容器
docker run -i –t centos /bin/bash
下载安装python编译环境依赖
yum -y install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel
#安装make编译所需的gcc,g++编译器
yum -y install gcc automake autoconf libtool make wget
移除centos中自带的python2.7的环境变量

#操作路径 /usr/bin
mv python python.bak
下载python3.6.8的源码压缩文件
1、创建安装路径

mkdir -p /usr/local/python/python3
2、进入指定路径下载python源码

#操作路径 /usr/local
wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tgz
3、解压源码压缩包

#操作路径 /usr/local
tar -zxvf Python-3.6.8.tgz
安装python3.6.8
1、编译安装环境

#操作路径 /usr/local/Python-3.6.8/
./configure --prefix=/usr/local/python/python3
2、进行安装python3.6.8

#操作路径要在/usr/local/Python-3.6.8
make && make install
3、软链接绑定

ln -s /usr/local/python/python3/bin/python3 /usr/bin/python
注意:软链接绑定是如果提示 /ur/bin/python已存在,说明之前的python2.7的软链接没有删除

4、验证是否安装成功

python -V
输出下方信息,证明成功了
Python 3.6.8
注意:由于centos7的yum要使用到python2.7.5的环境,我们要指定yum使用的python的版本,不然使用了3.6.8可能会导致yum命令无法使用,修改头部设置为使用python2.7

# 操作路径 /usr/bin/
vim yum
 
# 修改头部设置如下方
#!/usr/bin/python2.7
安装pip工具
因为以后安装python的库要用到pip这个工具,所以也要安装

1、安装pip

#操作路径 /usr/local
wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
2、绑定软连接

ln -s /usr/local/python/python3/bin/pip3 /usr/bin/pip
3、验证是否安装成功

pip -V
导出当前容器为镜像,并上传到局域网镜像库

docker ps

# 从 docker ps 命令中查找当前容器的容器id,如0dd22fa8cc06
# docker export 命令将容器0dd22fa8cc06导出为tar文件
docker export -o centos7_python36.tar 0dd22fa8cc06

# docker import 命令将压缩包中的镜像文件导入镜像库中,命名为 centos7_python36,标签为 v1
docker import centos7_python36.tar centos7_python36:v1

# docker tag 另存镜像并重命名,为了push到局域网中的镜像库
docker tag centos7_python36:v1 191.167.20.219:5000/centos7_python36:v1
docker push 191.167.20.219:5000/centos7_python36:v1


 
————————————————
版权声明:本文为CSDN博主「Waldenz」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/enter89/article/details/99681716

标签:bin,centos,python,centos7,python36,镜像,docker,usr
来源: https://www.cnblogs.com/adolfmc/p/12124440.html