- Introducción a las aplicaciones web
- Implantación de aplicaciones web en entornos locales
- Despliegue tradicional de aplicaciones web
- Integración continua
- Entrega continua
- Despliegue moderno de aplicaciones web (IaaS, PaaS, contenedores)
- Aprender a trabajar con git y github
- Aprender lenguaje de marcas markdown
- Comprender que existe un integración continua y un despliegue continuo en el proceso de despliegue de la página
- Aprender a instalar la pila LAMP en un servidor
- Identificar las características de los CMS más usado
- Descargar e instalar un CMS drupal
- Separar servidor web y servidor de base de datos en equipos distintos
- Instalación de otros CMS usando virtualhost
- Necesidad de otros servicios: por ejemplo, servidor de correo saliente
- Seleccionar un hosting compartido e identificar sus características
- Subir ficheros al hosting compartido (FTP)
- Realizar la configuración de la base de datos de forma adecuada
- Modificación (instalación de plugin) en el CMS
- Migración a otro hosting compartido
- Estudiar cómo podemos realizar una copia de seguridad de nuestra aplicación
- Identificación de problemas: los cambios se realizan directamente en el servidor en producción
- Identificación de problemas: los hosting compartidos no son escalables ni elásticos
- Identificación de problemas: el uso de FTP no me permite control de versiones y no es el mecanismo más eficiente.
- Identificación de problemas: Este esquema no funciona si tenemos un equipo de desarrollo construyendo una aplicación web a medida.
- Identificación de problemas: Las copias de seguridad pueden ser complicadas de realizar y además es complicado la automatización.
- Identificar las características entre los distintos entornos (desarrollo, producción)
- Identificar la necesidad de utilizar sistemas de control de versión como git
- Identificar la problemática de que el entono de desarrollo se tiene asemejar lo máximo posible al de producción: infraestructura y dependencias (vagrant y entornos virtuales).
- Valorar el uso de los framework para el desarrollo de aplicaciones web
- Utilizar servidores web de desarrollo para probar la aplicación.
- Entender que los datos de la aplicación son distintos en desarrollo y producción (base de datos de desarrollo y base de datos en producción), incluso con motores de base de datos distintos.
- Instalar un CMS python
- Identificación de problemas: si estamos desarrollando una aplicación es necesario probarla, realizar test.
- Identificación de problemas: además de lo anterior el equipo de desarrollo necesita ir haciendo otros procesos: analizando el código generado, generar documentación,...
- Identificación de problemas: Nuestro equipo de desarrollo las componen varios miembros: es fundamental utilizar un repositorio común (git)
- Identificación de problemas: Si seguimos una metodología ágil es deseable que todos los cambios que vayan realizando los programadores se vayan probando, analizando, ... de forma continúa
- Identificación de problemas: ¿Y si esas tareas las automatizamos? -> Integración continúa
- Conocer el software de integración continúa más utilizados
- Tener una primera experiencia con travis para realizar la integración continúa (en este caso simplemente realizar de forma automática que todos los cambios en nuestra página web estática es válida)
- Despliegue manual de nuestra página en el servicio surge.sh
- Entender el concepto de despliegue continúo y comprobar la función de despliegue de travis sobre surge.sh
- Conocer las caracterśiticas que nos ofrece el cloud computing.
- Conocer las características y funcionalidades que obtenemos al usar la capa de PaaS
- Realizar un despliegue en un sistema PaaS: Heroku