instalar - ¿Cómo instalo Python 3 en una instancia de AWS EC2?
install python aws (9)
Estoy tratando de instalar Python 3.x en una instancia de AWS EC2 y:
sudo yum install python3
no funciona
No package python3 available.
Busqué en Google y no puedo encontrar a nadie más que tenga este problema, así que pregunto aquí. ¿Tengo que descargarlo e instalarlo manualmente?
Nota: Esto puede ser obsoleto para las versiones actuales de Amazon Linux 2 desde finales de 2018 (ver comentarios), ahora puede instalarlo directamente a través de
yum install python3
.
En Amazon Linux
2
, no hay un
python3[4-6]
en los
python3[4-6]
predeterminados yum, sino que está la
Biblioteca Extras de Amazon
.
sudo amazon-linux-extras install python3
Si desea configurar entornos virtuales aislados con él;
El uso de las herramientas
yum install
''d
virtualenv
no parece funcionar de manera confiable.
virtualenv --python=python3 my_venv
Llamar al módulo / herramienta venv es menos complicado, y puede verificar que sea lo que desea / espera con
python3 --version
antemano.
python3 -m venv my_venv
Otras cosas que puede instalar (versiones a partir del 18 de enero 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 ]
Agregando a todas las respuestas ya disponibles para esta pregunta, me gustaría agregar los pasos que seguí para instalar Python3 en la instancia de AWS EC2 que ejecuta CentOS 7. Puede encontrar todos los detalles en este enlace.
https://aws-labs.com/install-python-3-centos-7-2/
Primero, necesitamos habilitar SCL. SCL es un proyecto comunitario que le permite construir, instalar y usar múltiples versiones de software en el mismo sistema, sin afectar los paquetes predeterminados del sistema.
sudo yum install centos-release-scl
Ahora que tenemos el repositorio SCL, podemos instalar Python3
sudo yum install rh-python36
Para acceder a Python 3.6, debe iniciar una nueva instancia de shell utilizando la herramienta scl de Software Collection:
scl enable rh-python36 bash
Si comprueba la versión de Python ahora, notará que Python 3.6 es la versión predeterminada
python --version
Es importante señalar que Python 3.6 es la versión predeterminada de Python solo en esta sesión de shell. Si sale de la sesión o abre una nueva sesión desde otro terminal, Python 2.7 será la versión predeterminada de Python.
Ahora, instale las herramientas de desarrollo de Python escribiendo:
sudo yum groupinstall ‘Development Tools’
Ahora cree un entorno virtual para que los paquetes de python predeterminados no se estropeen.
mkdir ~/my_new_project
cd ~/my_new_project
python -m venv my_project_venv
Para usar este entorno virtual,
source my_project_venv/bin/activate
Ahora, tiene su entorno virtual configurado con python3.
Amazon Linux ahora es compatible con python36.
python36-pip no está disponible. Por lo tanto, debe seguir una ruta diferente.
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
Como dijo @NickT, no hay python3 [4-6] en los repositorios yum predeterminados en Amazon Linux 2 , a partir de hoy utiliza 3.7 y observando todas las respuestas aquí podemos decir que cambiará con el tiempo.
Estaba buscando python3.6 en Amazon Linux 2 pero
amazon-linux-extras
muestra muchas opciones, pero ninguna python.
de hecho, puedes intentar encontrar la versión que conoces en
epel
repo:
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
EC2 (en la AMI de Amazon Linux) actualmente es compatible con python3.4 y python3.5.
sudo yum install python35
sudo yum install python35-pip
En derivados de Debian como Ubuntu, use apt. Consulte el repositorio de apt para las versiones de Python disponibles para usted. Luego, ejecute un comando similar al siguiente, sustituyendo el nombre del paquete correcto:
sudo apt-get install python3
En Red Hat y derivados, use yum. Consulte el repositorio de yum para ver las versiones de Python disponibles para usted. Luego, ejecute un comando similar al siguiente, sustituyendo el nombre del paquete correcto:
sudo yum install python36
En SUSE y derivados, use zypper. Consulte el repositorio de las versiones de Python disponibles para usted. Entonces. ejecute un comando similar al siguiente, sustituyendo el nombre del paquete correcto:
sudo zypper install python3
Estos son los pasos que utilicé para instalar manualmente python3 para cualquier otra persona que quiera hacerlo, ya que no es súper sencillo. EDITAR: es casi seguro que sea más fácil usar el administrador de paquetes yum (ver otras respuestas).
Tenga en cuenta que probablemente querrá hacer
sudo yum groupinstall ''Development Tools''
antes de hacer esto; de lo contrario, pip no se instalará.
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)
Si haces un
sudo yum list | grep python3
verá que si bien no tienen un paquete "python3", sí tienen un paquete "python34" o una versión más reciente, como "python36". Instalarlo es tan fácil como:
sudo yum install python34 python34-pip