如何在AWS EC2实例上安装Python3?

Jak*_*ard 109 python amazon-ec2 amazon-web-services python-3.x

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

sudo yum install python3
Run Code Online (Sandbox Code Playgroud)

不起作用:

No package python3 available.
Run Code Online (Sandbox Code Playgroud)

我已经google了,我找不到有这个问题的人,所以我可能会昏暗...请帮忙.我是否必须手动下载并安装它?

谢谢

Tab*_*lly 198

如果你做了

sudo yum list | grep python3
Run Code Online (Sandbox Code Playgroud)

你会看到虽然他们没有"python3"包,但他们确实有一个"python34"包.安装它就像下面这样简单:

sudo yum install python34 python34-pip
Run Code Online (Sandbox Code Playgroud)

  • `sudo yum install python34`对我不起作用.它说'没有包python34可用 (7认同)
  • 要使用pip3,请添加以下符号链接#ln -s /usr/bin/pip-3.4/usr/bin/pip3 (6认同)
  • @SohanShirodkar,您可能不走运,只是获得了一个新版本-他们9月份的版本移至`python35` ...在这里您可以看到最新版本:https://aws.amazon.com/amazon-linux-ami /#发行说明 (2认同)
  • 在2018年,`sudo yum install python36`也可用。也不要忘记安装最新的pip:`python3 -m pip install --user --upgrade pip',然后您可以`python3 -m pip install --user virtualenv`来安装虚拟环境。参考:https://packaging.python.org/guides/installing-using-pip-and-virtualenv/ (2认同)

Nic*_*k T 49

在Amazon Linux 2中,没有yum install python3默认的yum repos,而是Amazon Extras Library.

sudo amazon-linux-extras install python3
Run Code Online (Sandbox Code Playgroud)

如果要使用它设置隔离的虚拟环境; 使用python3[4-6]'d yum install工具似乎无法可靠地工作.

virtualenv --python=python3 my_venv
Run Code Online (Sandbox Code Playgroud)

调用venv模块/工具不那么挑剔,你可以virtualenv事先仔细检查它是你想要/期望的.

python3 -m venv my_venv
Run Code Online (Sandbox Code Playgroud)

它可以安装的其他东西(截至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 ]
Run Code Online (Sandbox Code Playgroud)

  • 我有点困惑,如果它现在已经过时了,为什么它会不断获得赞成票(上个月有 4 票)。 (2认同)

Jak*_*ard 37

以下是我用来手动安装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)
Run Code Online (Sandbox Code Playgroud)

  • 使用`pip3`也可以将它与`sudo ln -s/opt/python3/bin/pip3/usr/bin/pip3`链接起来. (8认同)

Rus*_*ter 24

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

sudo yum install python35
sudo yum install python35-pip
Run Code Online (Sandbox Code Playgroud)


Rea*_*tic 19

从Amazon Linux版本2017.09开始,python 3.6现已推出:

sudo yum install python36 python36-virtualenv python36-pip
Run Code Online (Sandbox Code Playgroud)

有关更多信息和其他软件包,请参阅发行说明

  • pip3没有链接,所以如果你想使用它,sudo ln -s /usr/bin/pip-3.6/usr/bin/pip3 (9认同)