如何在AWS EC2实例上安装Python 3?

时间:2014-12-27 17:54:22

标签: python python-3.x amazon-web-services amazon-ec2

我正在尝试在AWS EC2实例上安装python 3.x并且:

sudo yum install python3

不起作用:

No package python3 available.

我已经搜索过了,我找不到其他有此问题的人,所以我在这里问。我是否必须手动下载并安装它?

11 个答案:

答案 0 :(得分:172)

如果你做了

sudo yum list | grep python3

你会发现虽然他们没有" python3"包,他们确实有一个" python34"包,或更新的版本,例如" python36"。安装它就像:

sudo yum install python34

答案 1 :(得分:46)

  

注意:自2018年末以来,对于当前版本的Amazon Linux 2,这可能已经过时(请参阅注释),您现在可以通过yum install python3直接安装它。

在亚马逊Linux 2 中,默认的yum回购中没有python3[4-6],而是Amazon Extras Library

sudo amazon-linux-extras install python3

如果要使用它设置隔离的虚拟环境;使用yum install' d virtualenv工具似乎无法可靠地工作。

<击>

<击>
virtualenv --python=python3 my_venv

<击>

调用venv模块/工具不那么挑剔,你可以事先用python3 --version仔细检查它你想要/期望的内容。

python3 -m venv my_venv

它可以安装的其他东西(截至1月18日的版本):

[ec2-user@x ~]$ amazon-linux-extras list
  0  ansible2   disabled  [ =2.4.2 ]
  1  emacs   disabled  [ =25.3 ]
  2  memcached1.5   disabled  [ =1.5.1 ]
  3  nginx1.12   disabled  [ =1.12.2 ]
  4  postgresql9.6   disabled  [ =9.6.6 ]
  5  python3=latest  enabled  [ =3.6.2 ]
  6  redis4.0   disabled  [ =4.0.5 ]
  7  R3.4   disabled  [ =3.4.3 ]
  8  rust1   disabled  [ =1.22.1 ]
  9  vim   disabled  [ =8.0 ]
 10  golang1.9   disabled  [ =1.9.2 ]
 11  ruby2.4   disabled  [ =2.4.2 ]
 12  nano   disabled  [ =2.9.1 ]
 13  php7.2   disabled  [ =7.2.0 ]
 14  lamp-mariadb10.2-php7.2   disabled  [ =10.2.10_7.2.0 ]

答案 2 :(得分:34)

以下是我用来手动安装python3的步骤,因为它不是超级直接的。 编辑: 使用yum包管理器几乎肯定更容易(参见其他答案)。

注意,在执行此操作之前,您可能希望执行 sudo yum groupinstall 'Development Tools' ,否则pip将无法安装。

wget https://www.python.org/ftp/python/3.4.2/Python-3.4.2.tgz
tar zxvf Python-3.4.2.tgz
cd Python-3.4.2
sudo yum install gcc
./configure --prefix=/opt/python3
make
sudo yum install openssl-devel
sudo make install
sudo ln -s /opt/python3/bin/python3 /usr/bin/python3
python3 (should start the interpreter if it's worked (quit() to exit)

答案 3 :(得分:23)

EC2(在Amazon Linux AMI上)目前支持python3.4和python3.5。

sudo yum install python35
sudo yum install python35-pip

答案 4 :(得分:18)

从亚马逊Linux版本2017.09开始,python 3.6现已推出:

sudo yum install python36 python36-virtualenv python36-pip

有关详细信息和其他软件包,请参阅Release Notes

答案 5 :(得分:2)

Amazon Linux现在支持python36。

python36-pip不可用。因此需要遵循不同的路线。

sudo yum install python36 python36-devel python36-libs python36-tools

# If you like to have pip3.6:
curl -O https://bootstrap.pypa.io/get-pip.py
sudo python3 get-pip.py

答案 6 :(得分:2)

就像@NickT所说的那样,Amazon Linux 2 中的默认yum仓库中没有python3 [4-6],到目前为止,它使用3.7并查看此处的所有答案,我们可以说它将随时间改变。

我一直在Amazon Linux 2上寻找python3.6,但是amazon-linux-extras显示了很多选项,但根本没有python。实际上,您可以尝试在epel回购中找到您知道的版本:

sudo amazon-linux-extras install epel

yum search python | grep "^python3..x8"

python34.x86_64 : Version 3 of the Python programming language aka Python 3000
python36.x86_64 : Interpreter of the Python programming language

答案 7 :(得分:1)

除了已为该问题提供的所有答案之外,我想添加我在运行CentOS 7的AWS EC2实例上安装Python3所遵循的步骤。您可以在此链接中找到完整的详细信息。

https://aws-labs.com/install-python-3-centos-7-2/

首先,我们需要启用SCL。 SCL是一个社区项目,可让您在同一系统上构建,安装和使用多个版本的软件,而不会影响系统默认软件包。

sudo yum install centos-release-scl

现在我们有了SCL存储库,我们可以安装python3

sudo yum install rh-python36

要访问Python 3.6,您需要使用Software Collection scl工具启动一个新的shell实例:

scl enable rh-python36 bash

如果现在检查Python版本,您会注意到Python 3.6是默认版本

python --version

必须指出,仅在此Shell会话中,Python 3.6是默认的Python版本。如果您退出会话或从另一个终端打开新会话,则Python 2.7将是默认的Python版本。

现在,通过键入以下命令安装python开发工具:

sudo yum groupinstall ‘Development Tools’

现在创建一个虚拟环境,以免混淆默认的python程序包。

mkdir ~/my_new_project
cd ~/my_new_project
python -m venv my_project_venv

要使用此虚拟环境,

source my_project_venv/bin/activate

现在,您已经使用python3设置了虚拟环境。

答案 8 :(得分:1)

检查可用的包

A> amazon-linux-extras

从列表中找到所需版本的python包

B> sodo amazon-linux-extras 启用 python

C> sudo yum clean metadata && sudo yum install python

答案 9 :(得分:0)

在Debian衍生产品(例如Ubuntu)上,使用apt。检查apt信息库中是否有可用的Python版本。然后,运行与以下类似的命令,替换正确的软件包名称:

sudo apt-get install python3

在Red Hat及其衍生产品上,使用yum。检查yum存储库中可用的Python版本。然后,运行与以下类似的命令,替换正确的软件包名称:

sudo yum install python36

在SUSE及其衍生物上,请使用zypper。检查存储库中可用的Python版本。然后。运行类似于以下内容的命令,替换正确的软件包名称:

sudo zypper install python3

答案 10 :(得分:-2)

这是在Amazon linux ec2实例上安装python3的一个命令:

$ sudo yum install python3 -y

$ python3 --version

Python 3.7.6