如何在AWS EC2实例上安装Python3.6

4

这个问题是关于安装Python 3.6版本的,不是其他版本。

我正在使用AWS的amazonlinux Docker镜像,并尝试在其中安装Python 3.6。不到一个月前,只需使用yum install python3.x86_64即可成功安装,但现在似乎所有Python 3版本都使用Python 3.7,如下所示:


bash-4.2# sudo yum list | grep python3 
python3.i686                           3.7.4-1.amzn2.0.3              amzn2-core
python3.x86_64                         3.7.4-1.amzn2.0.3              amzn2-core
python3-Cython.x86_64                  0.27.3-2.amzn2.0.2             amzn2-core
python3-debug.x86_64                   3.7.4-1.amzn2.0.3              amzn2-core
python3-devel.x86_64                   3.7.4-1.amzn2.0.3              amzn2-core
python3-libs.i686                      3.7.4-1.amzn2.0.3              amzn2-core
python3-libs.x86_64                    3.7.4-1.amzn2.0.3              amzn2-core
python3-lit.noarch                     0.7.1-1.amzn2.0.1              amzn2-core
python3-openmpi.x86_64                 4.0.1-11.amzn2.0.1             amzn2-core
python3-pip.noarch                     9.0.3-1.amzn2.0.1              amzn2-core
python3-rpm.x86_64                     4.11.3-40.amzn2.0.3            amzn2-core
python3-rpm-macros.noarch              3-23.amzn2                     amzn2-core
python3-setuptools.noarch              38.4.0-3.amzn2.0.6             amzn2-core
python3-test.x86_64                    3.7.4-1.amzn2.0.3              amzn2-core
python3-tkinter.x86_64                 3.7.4-1.amzn2.0.3              amzn2-core
python3-tools.x86_64                   3.7.4-1.amzn2.0.3              amzn2-core
python3-wheel.noarch                   0.30.0a0-9.amzn2.0.3           amzn2-core

你正在拉取最新的容器吗?较旧的标签上可能已经安装了3.6版本。 - gold_cy
@aws_apprentice 我正在使用一个月前使用过的相同镜像,而且一个月前它仍然有可用的Python3.6。 - Ludo
2个回答

1
您可以直接源代码下载并构建。
步骤如下:
  1. 安装gcc和sqlite-devel yum install gcc sqlite-devel
  2. 提取下载的存档,并进入该目录
  3. 使用./configure --enable-optimizations进行配置
  4. 最后执行make altinstall
altinstall避免替换默认的/usr/bin/python
就这样!

1
亚马逊官方容器使用基于Red Hat的发行版。您不能使用apt-get。 - user1462442
谢谢@sayan,我可能会尝试一下。真不敢相信在如此常见的问题上没有更简单的解决方案... - Ludo

1

感谢AWS PS。但是在epel列表中没有python36包。我应该安装哪个? - Ludo
看起来Python36已经从EPEL中删除,并被IUS替换。 - AWS PS
IUS 不为 Amazon Linux 构建软件包。 - carlwgeorge

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接