¡Hice una app sencilla de administración remota para Incus (antes LXD)!
(github.com/gg582)¡Hola! Soy un estudiante universitario de la carrera de Software de Computación que apenas está aprendiendo a programar.
Este proyecto es un cliente para Incus, que permite crear fácilmente contenedores de sistema, incluyendo init. Todavía tiene pocas funciones y sigue siendo un prototipo, pero les agradecería mucho si le echan un vistazo.
A continuación va una breve descripción.
- Administración de contenedores con una app simple en Python
- Entorno de desarrollo por CLI mediante puerto SSH
- Puertos 30001 y 30002 disponibles para pruebas
- Consulta y cambio de estado remoto (incluyendo
freeze), y envío de archivos - Es posible usar usuarios como si fueran namespaces: si se elimina el usuario, se eliminan todos los contenedores
- Se permiten etiquetas duplicadas: a cada uno se le asigna una cadena única independiente como nombre real
Las ventajas que pude obtener usando esta app fueron las siguientes:
- Configuración sencilla de contenedores mientras me desplazo
- Creación de múltiples contenedores de sistema con
initvirtualizado con un solo clic - Reemplazo fácil de documentos e imágenes al servir HTML simple con NGINX
- Pruebas del script de build de un proyecto en un entorno virtual
Logros clave alcanzados
- Probar el build de Incuspeed con Incuspeed: pruebas de build usando la propia herramienta
- Cambio remoto de la imagen de ejemplo que muestra Nginx
- Probar distintas distribuciones
Distribuciones compatibles
- AlmaLinux 9
- RockyLinux 9
- Debian 10,11,12
- Devuan Beowulf, Chimaera, Daedalus (básicamente Debian con
initreemplazado porsysv) - Slackware current, 15.0 (la configuración de
slackpkg+no viene incluida por defecto) - Centos 9 Stream
De las imágenes oficiales de Incus, ya terminé al menos la configuración de SSH en todas las distribuciones que he probado.
Funciones que estoy considerando para más adelante
- Creación/administración remota de snapshots
- Guardar el contenedor actual como imagen
Todavía soy amateur, ¡pero me gustaría dejar una buena impresión!
1 comentarios
Como referencia, los puertos internos 30001 y 30002 se asignan hacia afuera como puerto SSH +1 y puerto SSH +2.