Máquina virtual para desarrollo web
En este caso sí os pongo un enlace al proyecto: https://github.com/estribiyo/devcenter
Pero antes de empezar, tengo que advertiros de que no sería algo que utilizaría a día de hoy… a pesar de que fue algo que me ayudó (y mucho) en el desarrollo en épocas pasadas.
Viene a ser un "sustituto" de Xampp, pero con unas características también, muy superiores: viene siendo un ISP, pero configurado específicamente para desarrollar webs (mayormente en PHP, aunque no en exclusiva). Facilitaba el proceso de añadir sitios, probar correos, poder cambiar fácilmente la versión de PHP… y sobre todo, tener un entorno bastante similar al que uno se puede encontrar en producción.
La "magia" del invento es que estaba preparado para correr en una máquina virtual que se ejecutaba en VirtualBox. En ella se desplegaba:
- Un ISP, en el que podías trabajar como si estuvieses en un ISP real (utiliza el software ISPConfig):
- Creación de clientes/usuarios
- Creación de sitios para los clientes/usuarios
- Gestión de las versiones de software y parámetros de cada uno de los sitios creados.
- Creación/gestión de la (o las) bases de datos. Mayormente MariaDB.
- Servicio de correo electrónico, en el que podías enviar correos electrónicos sin hacerlo a un servidor de correo electrónico real (evitando por tanto listas de SPAM por las sucesivas pruebas, etc.)
- Al levantar la máquina, se aprovisionaba automáticamente con unos pequeños scripts para no tener que hacer todo el proceso anterior a mano. Incluso se hacía un volcado de la base de datos y/o recuperación de la misma, conservando si se quería las credenciales originales del trabajo para tener que tocar lo mínimo posible en el desarrollo.
- Cada sitio se podía configurar desde un repositorio de control de versiones o, directamente, poner los archivos en su correspondiente directorio.
¿Por qué está abandonado el proyecto? Fácil: hoy día hay alternativas menos "pesadas", que requieren menos recursos para hacer lo mismo, más modulares… no te obligan a desplegar un ISP "completo" para ofrecer las mismas características (o incluso más adecuadas). La ventaja es que era fácil levantarlo en Windows en un momento que el WSL estaba aún en pañales… y las alternativas XAMPP (o similares) estaban bien para "trastear", pero en el momento que querías desarrollar algo robusto te encontrabas con muchísimos problemas.
El "problema" fundamental es que era eso: un entorno de desarrollo. No se puede utilizar para publicar (por si alguien tiene la tentación) por que la infraestructura está adaptada para lo que es y en un entorno de producción implicaría muchos problemas (de seguridad sobre todo).