Configurar un servidor web en Raspberry Pi con Flask Deja un comentario

Cuando estamos creando proyectos con Arduino ya sean para el IoT, para proyectos domóticos o para cualquier otra cosa, tarde o temprano necesitaremos un servidor web ya sea para almacenar los datos o simplemente para mostrarlos. Un servidor web no es más que un software y como tal, debe ser instalado en un hardware para que pueda funcionar. En este caso yo no tengo dudas, mi elección es Raspberry Pi. Por lo tanto en este artículo te voy a explicar cómo configurar un servidor web en Raspberry Pi. Mi elección es utilizar Flask.

Aunque yo lo llamaré servidor web, realmente se trata de un microframework para Python. Esta es una de sus ventajas, utiliza Python. Por lo tanto hereda la “diversión” y la facilidad de configuración de este lenguaje. Es muy sencillo empezar a ver resultados y además tiene toda la potencia que nos puede aportar otro tipo de servidores pero sin la necesidad de configuraciones infernales.

El hecho de que se llame microframework se debe a que no requiere de herramientas o librerías externas. Sin embargo, podemos añadir funcionalidades con extensiones. Vamos, lo ideal para comenzar poco a poco y ver enseguida resultados.

Configurar un servidor web en Raspberry Pi

Lo primero que debemos hacer antes de nada es tener a mano una Raspberry Pi. En mi caso y para este artículo, utilizo la versión 2 model B. La puedes encontrar por unos 41€ en Amazon, aunque también puedes comprar la versión 3 por el mismo precio. Tu decides.

El sistema operativo recomendado es Raspbian, el la web de Raspberry Pi puedes ver un tutorial de cómo instalarlo. Con esto ya tenemos todo lo necesario para empezar a instalar.

Paso 1: instalar los paquetes Flask

Abre un terminal de Linux en tu Raspberry Pi. También se conoce como línea de comandos. Escribe lo siguiente y pulsa enter.

instalar-flask-01

En un momento dado te preguntará ¿Deseas continuar?[S/n]. Aquí debes escribir S y enter.

instalar-flask-02

Ahora tienes que tener paciencia. Se tiene que descargar Flask e instalar y puede tardar un poco. Dependerá de tu conexión y de la versión de Raspberry Pi que estés utilizando. Al final debe aparecer algo parecido a esto.

instalar-flask-03

Paso 2: primera aplicación web básica

No voy a entrar en detalle de la configuración y las diferentes sentencias. Solo veremos aquello que es necesario para ver nuestra primera página web.

  1. Crea una carpeta para la aplicación. Te aconsejo que lo hagas en el escritorio de tu Raspberry Pi. La puedes llamar como quieras, no es importante.
  2. Vamos a empezar con el primer archivo en Python para hacer funcionar el sevidor así que, vete a Menu/Programación/Python 3 (IDLE).instalar-python-04Esto nos abrirá una Shell de Python que es muy útil para ir escribiendo sentencias sueltas y para ir viendo los mensajes que podemos abrir desde el código. Sirven sobre todo para debugar.
  3. Creamos un archivo nuevo en File/New File o pulsar Ctrl+N. Esto nos abrirá un editor nuevo y un archivo en blanco.
  4. Ahora vamos a guardar el archivo que hemos creado en el editor File/Save As … y le ponemos el nombre de app.py. Es importante tener en cuenta dos cosas, la extensión debe ser .py, para que se identifique como un archivo de Python y la carpeta donde lo guardemos es la que hemos creado al principio.
  5. Escribe el siguiente código
  6. Guardamos el archivo File/Save o pulsando Ctrl+s
  7. Volmemos al terminal de Linux. Vamos a la carpeta donde hemos guardado el archivo app.py. En mi caso es Desktop/WebPrueba. Lo hacemos con el siguiente comando.

    instalar-flask-07

  8. Ahora ya podemos ejecutar la aplicación. Ya hemos terminado de configurar un servidor web en Raspberry Pi. En la misma terminal ejecutamos el siguiente comando.

    instalar-flask-08

Paso 3: probando la aplicación

Ya lo tenemos todo listo y podemos empezar a probar la aplicación. Es una página web muy sencilla. Al configurar un servidor web en Raspberry Pi, estamos permitiendo que otros dispositivos se conecten a esta máquina. Esto nos permitirá que, por ejemplo, un Arduino MKR1000, se conecte y nos envíe información.

Lo primero que debemos hacer es averiguar que IP tiene nuestra Raspberry Pi. Eso es fácil, abre un terminal y escribe el siguiente comando.

Esto te dará el siguiente resultado.

instalar-flask-09

Ahora ya podemos conectarnos desde cualquier dispositivo que esté conectado a la misma red. Aquí te dejo unos ejemplos desde diferentes dispositivos. Asegúrate de tener ejecutado el archivo que hemos creado antes app.py.

Y hasta aquí la primera parte de este tutorial. El objetivo, configurar un servidor web en Raspberry Pi. El resto será fruto de nuestra imaginación. En siguientes artículos te iré dando algunas ideas.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Enviar Whatsapp
Hola 👋
¿En qué podemos ayudarte?