Despliegue de una aplicación Python Bottle en Heroku
En una entrada anterior, explicamos cómo trabajar con Heroku, en concreto instalamos un CMS Drupal utilizando la herramienta heroku-cli. En este artículo vamos a desplegar una aplicación web...
View ArticleCurso de infraestructura Cloud con OpenStack. Universidad de Almería
La pasada semana, junto a mi compañero @alberto_molina hemos impartido en la Universidad de Almería, un curso sobre infraestructura Cloud, donde hemos tratado temas como la instalación automática y la...
View ArticlePublicar una página web en Github Pages
Esté artículo lo escribí originalmente en septiembre de 2013. Como el servicio GitHub Pages ha sufrido algunos cambios en su configuración, vuelvo a publicarlo con las modificaciones oportunas....
View ArticleConfigurando el servidor de Pledin con IPv6
En estos últimos días he migrado mis páginas personales a un nuevo servidor dedicado de OVH. Anteriormente las tenía alojado en OpenShift con un plan de pago muy asequible, pero con el fin del...
View ArticleIntroducción a PHP-FPM
FPM (FastCGI Process Manager) es una implementación alternativa al PHP FastCGI. FPM se encarga de interpretar código PHP. Aunque normalmente se utiliza junto a un servidor web (Apache2 o ngnix), en...
View ArticleVistas (views) en el servidor DNS Bind9
En alguna circunstancia nos puede interesar que un mismo nombre que resuelve nuestro DNS devuelva direcciones IP distintas según en que red este conectada el cliente que realiza la consulta. Por...
View ArticleConfiguración de un proxy inverso con Apache 2.4
Un proxy inverso es un tipo de servidor proxy que recupera recursos en nombre de un cliente desde uno o más servidores. Por lo tanto el cliente hace la petición al puerto 80 del proxy, y éste es el que...
View Articleflask: Miniframework python para desarrollar páginas web (1ª parte)
Flask es un “micro” framework escrito en Python y concebido para facilitar el desarrollo de aplicaciones Web bajo el patrón MVC. ¿Por qué usar flask? Flask es un “micro” framework: se enfoca en...
View Articleflask: Enrutamiento (2ª parte)
Enrutamiento: rutas El objeto Flask app nos proporciona un decorador router que es capaz de filtrar la función vista que se va ejecutar analizando la petición HTTP, fundamentalmente por la ruta y el...
View Articleflask: Trabajando con peticiones y respuestas (3ª parte)
Trabajando con peticiones HTTP Hemos indicado que nuestra aplicación Flask recibe una petición HTTP, cuando la URL a la que accedemos se corresponde con una ruta y un método indicada en una...
View Articleflask: Plantillas con jinja2 (4ª parte)
Plantillas con jinja2 Jinja2 es un motor de plantilla desarrollado en Python. Flask utiliza jinja2 para generar documentos HTML válidos de una manera muy sencilla y eficiente. Por dependencias al...
View ArticleCurso de Apache 2.4 en OpenWebinars
Hace pocos días he impartido un curso sobre el servidor web Apache 2.4 en OpenWebinars. Os dejo aquí dos vídeos que se han publicado en YouTube para promocionar el curso:
View ArticleInstalación de kubernetes con kubeadm
Kubernetes es un sistema de código abierto que nos permite despliegues automáticos, escabilidad y gestión de contenedores de aplicaiones. kubeadm es una herramienta que nos permite el despliegue de un...
View ArticleDesplegando una aplicación en Kubernetes
Un escenario común cuando desplegamos una aplicación web puede ser el siguiente: En este escenario tenemos los siguientes elementos: Un conjunto de máquinas (normalmente virtuales) que sirven la...
View ArticleRecursos de Kubernetes: Pods
La unidad más pequeña de kubernetes son los Pods, con los que podemos correr contenedores. Un pod representa un conjunto de contenedores que comparten almacenamiento y una única IP. Los pods son...
View ArticleRecursos de Kubernetes: ReplicaSet
ReplicaSet es un recurso de Kubernetes que asegura que siempre se ejecute un número de replicas de un pod determinado. Por lo tanto, nos asegura que un conjunto de pods siempre están funcionando y...
View ArticleRecursos de Kubernetes: Deployment
Deployment es la unidad de más alto nivel que podemos gestionar en Kubernetes. Nos permite definir diferentes funciones: Control de replicas Escabilidad de pods Actualizaciones continúas Despliegues...
View Articleflask: Trabajando con peticiones y respuestas (3ª parte)
Trabajando con peticiones HTTPHemos indicado que nuestra aplicación Flask recibe una petición HTTP, cuando la URL a la que accedemos se corresponde con una ruta y un método indicada en una determinada...
View Article