Binary Coffee

Aprende a desplegar un bot de Telegram en Heroku

bot heroku python telegram
**Heroku** es uno de los **PaaS** (Platform as a Service) m√°s utilizados en la actualidad por su fuerte enfoque en resolver el despliegue de una aplicaci√≥n. Permite manejar los servidores, sus configuraciones y la administraci√≥n. A **Heroku** solo le dices qu√© lenguaje de backend est√°s utilizando o qu√© base de datos y te preocupas √ļnicamente por el desarrollo de tu aplicaci√≥n. > Para este tutorial te sugerimos que tengas un bot, si a√ļn no lo tienes puedes ver el art√≠culo [C√≥mo hacer un bot de Telegram desde cero con Python](https://binary-coffee.dev/post/como-hacer-un-bot-de-telegram-desde-cero-con-python). > Debes tener una cuenta en [Heroku](heroku.com) (en caso de que accedas desde Cuba debes usar una VPN para crearte la cuenta, una vez creada no es necesario usar m√°s la VPN para administrar la cuenta y crear aplicaciones). Lo primero que vamos a hacer es dirigimos al Dashboard y crear la app. ![Personal Apps](https://dev.angemy.com/uploads/7ea09598f9914b85822b5b84b9e394ad.png) Escribimos el nombre de la app. ![Create App](https://dev.angemy.com/uploads/a7f1a9b641874d1c963c8909c65c010b.png) Configuramos las variables de entorno, en este caso ponemos todas las variables secretas que utilice nuestra app. ![Settings](https://dev.angemy.com/uploads/d1b7a3bcd9444a96be136eda9afefccb.png) > No es recomendable tener este tipo de datos en un repositorio, por eso las establecemos como variables de entorno. Para acceder a estas variables desde **Python** es muy sencillo: ``` import os os.environ['TOKEN'] ``` Observa que entre las comillas simples `'` escribimos el nombre de nuestra variable de entorno. Ahora debemos instalarnos el cliente de **Git**, el cual se puede descargar desde [Git-scm](https://git-scm.com/). Debemos crear el archivo **Procfile** que especifica que archivo se va a ejecutar una vez relizado el deploy. ``` web: python bot.py ``` Creamos un archivo **runtime.txt** que especifica que versi√≥n de python usa el proyecto, si no sabes cual estas usando ejecuta en la cosola `python --version`. ``` python-3.7.3 ``` Especificamos las librer√≠as que usamos en un archivo **requirements.txt** ejecutando en la consola `pip freeze > requirements.txt`. Ya lo tenemos todo ahora simplemente vemos en la configuraci√≥n de la aplicaci√≥n en Heroku la direcci√≥n del repositorio de git y la copiamos. ![Git Client](https://dev.angemy.com/uploads/ddb1562b6c9a4d8fb4290c7598c4a483.png) Inicializamos git en nuestro proyecto, agregamos el origen que hab√≠amos copiado y subimos todos los archivos al repositorio ejecutando en la consola desde la carpeta del proyecto: ``` git init git remote add origin https://git.heroku.com/telegram-example-bot.git git add . git commit -m "first commit" git push origin master ``` Cuando te pida usuario y contrase√Īa debes poner tus **credenciales** de Heroku. Cada vez que hagas un git push Heroku har√° el deploy de la aplicaci√≥n. Ahora lo que queda es activar el **Dyno**, para ello vamos a Resources. ![Dyno](https://dev.angemy.com/uploads/c2127e645f634cdfbc7a3e37fe9a699a.png) Ahora si revisas en telegram deber√≠as tener tu bot funcionando. Esta es solo una de las varias formas que existen de hacer deploy en Heroku, otras opciones son a trav√©s de Github y del cliente Heroku-cli. > Keep calm and drink a Binary Coffee!
Opiniones