##############################################
基于centos7构建python3运行环境
构建命令: 在Dockerfile文件目录下执行 docker build -f python3.Dockerfile -t python3:v1.0.0 .
##############################################
FROM centos:7.6.1810
MAINTAINER kaikai # 指定作者信息
RUN set -ex
# 预安装所需组件
&& yum install -y wget tar libffi-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make initscripts
&& wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz
&& tar -zxvf Python-3.7.0.tgz
&& cd Python-3.7.0
&& ./configure prefix=/usr/local/python3
&& make
&& make install
&& make clean
&& rm -rf /Python-3.7.0*
&& yum install -y epel-release
&& yum install -y python-pip
设置默认为python3
RUN set -ex
# 备份旧版本python
&& mv /usr/bin/python /usr/bin/python27
&& mv /usr/bin/pip /usr/bin/pip27
# 配置默认为python3
&& ln -s /usr/local/python3/bin/python3.7 /usr/bin/python
&& ln -s /usr/local/python3/bin/pip3 /usr/bin/pip
修复因修改python版本导致yum失效问题
RUN set -ex
&& sed -i “s#/usr/bin/python#/usr/bin/python2.7#” /usr/bin/yum
&& sed -i “s#/usr/bin/python#/usr/bin/python2.7#” /usr/libexec/urlgrabber-ext-down
&& yum install -y deltarpm
基础环境配置
RUN set -ex
# 修改系统时区为东八区
&& rm -rf /etc/localtime
&& ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
&& yum install -y vim
# 安装定时任务组件
&& yum -y install cronie
支持中文
RUN yum install kde-l10n-Chinese -y
RUN localedef -c -f UTF-8 -i zh_CN zh_CN.utf8
更新pip版本
RUN pip install --upgrade pip
ENV LC_ALL zh_CN.UTF-8
镜像构建
docker build -f python3.Dockerfile -t python3:v1.0.0 .
启动镜像测试
docker run -it --rm --name python3 python3:v1.0.0 /bin/bash