
Flask es un micro marco web gratuito y de código abierto para Python diseñado para ayudar a los desarrolladores a crear aplicaciones web seguras, escalables y fáciles de mantener. Flask se basa en Werkzeugand utiliza Jinja2 como motor de plantillas.
A diferencia de Django, de forma predeterminada, Flask no incluye ORM, validación de formularios ni ninguna otra funcionalidad proporcionada por bibliotecas de terceros. Flask se creó teniendo en cuenta las extensiones, que son paquetes de Python que agregan funcionalidad a una aplicación de Flask.
Existen diferentes métodos para instalar Flask, según sus necesidades. Se puede instalar en todo el sistema o en un entorno virtual de Python usando pip.
Los paquetes Flask también se incluyen en los repositorios de EPEL y se pueden instalar usando el yum
gerente de empaquetación. Este es el método más sencillo para instalar Flask en CentOS 7, pero no tan flexible como la instalación en un entorno virtual. Además, la versión incluida en los repositorios siempre va a la zaga de la última versión de Flask.
El objetivo principal de los entornos virtuales de Python es crear un entorno aislado para diferentes proyectos de Python. De esta manera, puede tener varios entornos de Flask diferentes en una sola computadora e instalar una versión específica de un módulo por proyecto sin preocuparse de que afecte sus otras instalaciones de Flask. Si instala Flask en el entorno global, solo puede instalar una versión de Flask en su computadora.
Instalando Flask en CentOS 7 #
En las siguientes secciones, proporcionaremos detalles sobre cómo instalar Flask en un entorno virtual de Python en CentOS 7.
1. Instalación de Python 3 y venv #
Instalaremos Python 3.6 desde los repositorios de Software Collections (SCL).
CentOS 7 se envía con Python 2.7.5, que es una parte fundamental del sistema base de CentOS. SCL le permitirá instalar versiones más recientes de python 3.x junto con el python v2.7.5 predeterminado para que las herramientas del sistema, como yum, sigan funcionando correctamente.
Habilite SCL instalando el archivo de versión de CentOS SCL que se incluye en el repositorio de extras de CentOS:
sudo yum install centos-release-scl
Una vez que el repositorio esté habilitado, instale Python 3.6 con el siguiente comando:
sudo yum install rh-python36
Una vez instalado Python 3.6, estamos listos para crear un entorno virtual para nuestra aplicación Django.
2. Creación de un entorno virtual #
Comience navegando hasta el directorio donde le gustaría almacenar sus entornos virtuales de Python 3. Puede ser su directorio de inicio o cualquier otro directorio donde su usuario tenga permisos de lectura y escritura.
Para acceder a Python 3.6, debe iniciar una nueva instancia de shell usando scl
herramienta:
scl enable rh-python36 bash
Cree un nuevo directorio para su aplicación Flask y navegue hasta él:
mkdir my_flask_app
cd my_flask_app
Ejecute el siguiente comando para crear un nuevo entorno virtual:
python3 -m venv venv
El comando anterior creará un directorio llamado venv
, que contiene una copia del binario de Python, el administrador de paquetes Pip, la biblioteca estándar de Python y otros archivos de soporte. Puede usar cualquier nombre que desee para el entorno virtual.
Active el entorno virtual usando activate
guión:
source venv/bin/activate
Una vez activado, el directorio bin del entorno virtual se agregará al comienzo de $PATH
variable. También cambiará el indicador de su shell y mostrará el nombre del entorno virtual que está utilizando actualmente. En nuestro caso es venv
.
3. Instalando Matraz #
Ahora que el entorno virtual está activado, puede usar el pip del administrador de paquetes de Python para instalar Flask:
pip install Flask
Dentro del entorno virtual, puede usar el comando pip
en lugar de pip3
y python
en lugar de python3
. Verifique la instalación con el siguiente comando que imprimirá la versión de Flask:
python -m Flask --version
Al momento de escribir este artículo, la última versión oficial de Flask es 1.0.2
Flask 1.0.2
Python 3.6.3 (default, Mar 20 2018, 13:50:41)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)]
Su versión de Flask puede diferir de la versión que se muestra aquí.
4. Creación de una aplicación de matraz mínimo #
En esta guía, crearemos una sencilla aplicación hola mundo que mostrará el texto "¡Hola mundo!".
Abra su editor de texto o Python IDE y cree el siguiente archivo:
~/my_flask_app/hello.pyfrom flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World!'
Analicemos el código línea por línea.
- En la primera línea, estamos importando la clase Flask.
- A continuación, creamos una instancia de la clase Flask.
- Luego usamos la
route()
decorador para registrar elhello_world
función para el/
ruta. Cuando se solicita esta ruta,hello_world
se llama y el mensaje “Hello World!” se devuelve al cliente.
Guarde el archivo como hello.py
y vuelve a la ventana de tu terminal.
5. Probando el servidor de desarrollo #
Usaremos el flask
comando para ejecutar la aplicación, pero antes de eso, debemos decirle a Flask cómo cargar la aplicación especificando FLASK_APP
variable de entorno:
export FLASK_APP=hello.py
flask run
El comando anterior iniciará el servidor integrado de desarrollo.
La salida será algo como lo siguiente:
* Serving Flask app "hello.py"
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: off
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
Si instaló Flask en una máquina virtual y desea acceder al servidor de desarrollo de Flask, puede hacer que el servidor esté disponible públicamente agregando --host=0.0.0.0
a la flask run
dominio.
Abra http://127.0.0.1:5000
en su navegador web y se le presentará el mensaje "¡Hola mundo!" mensaje.
Para detener el servidor de desarrollo, escriba CTRL-C
en tu terminal.
6. Desactivación del entorno virtual #
Una vez que haya terminado con su trabajo, desactive el entorno escribiendo deactivate
y volverás a tu shell normal.
deactivate