Skip to content

Infraestructura del servidor la cátedra

Información de la infraestructura del servidor de la asignatura Proyecto de Software 2021.

Infraestructura

infraestructura

Versiones a utilizar

  • Lenguaje: Python 3.8.10.
  • Servidor Web: Apache 2.4.41.
  • Servidor de Base de Datos: MariaDB 10.3.31.

Código interpretado

Logs de Apache

Detalles de la infraestructura

  • En sus máquinas de desarrollo:

    • Par de claves SSH.
    • Repositorio Git Clonado.
    • Venv con dependencias instaladas.
    • Uso de ambiente de development (FLASK_ENV=development).
  • En Gitlab:

    • Repositorio Central de Git.
    • Hook que se dispara ante cada push al Servidor Web Apache.
  • En el Servidor Web Apache:

    • Servidor de MariaDB local (la BD sólo se accede mediante localhost).
    • Uso de ambiente de producción (FLASK_ENV=production).
    • Virtualenv: Cada grupo tiene su ambiente virtual propio. Se instala lo que posea el requirements.txt de la raiz de su repositorio.
    • Aplicación: cada virtualhost mediante mod_wsgi , activando en venv correspondiente ejecuta la aplicación que se encuentre en la raíz de su repositorio.
  • Sincronización ante un push:

    • Se actualiza el código al último commit de la rama master.
    • Se instala en el virtualenv lo que se encuentre en requirements.txt.
    • Se hace un reload de la aplicación.
  • Carpetas con permiso de escritura en el servidor:

    • Tenemos 2 carpetas a las cuales se le da permisos de escritura (deben estar creadas).
      • /uploads
      • /app/static/uploads.