Нема описа

Celestino Rey f9e8d26edf Se añade botón consola para lanzar noVNC пре 7 месеци
.github 23108c30f6 Primer commit пре 7 месеци
app f9e8d26edf Se añade botón consola para lanzar noVNC пре 7 месеци
static f9e8d26edf Se añade botón consola para lanzar noVNC пре 7 месеци
.gitignore 23108c30f6 Primer commit пре 7 месеци
README.md 7bac142382 Interfaz gráfico para gestión пре 7 месеци
pyproject.toml 23108c30f6 Primer commit пре 7 месеци
requirements.txt d77665758e Crea máquina virtual sin plantilla пре 7 месеци

README.md

VirtManager

API for managing virtual machines on Ubuntu using FastAPI and libvirt.

Installation

  1. Create and activate a virtual environment:

    python3 -m venv venv
    source venv/bin/activate
    
  2. Install dependencies:

    pip install -r requirements.txt
    
  3. Ensure libvirt and Python bindings are installed on the system:

    sudo apt install libvirt-daemon-system libvirt-dev pkg-config python3-libvirt python3-gi
    

Running the API

Set the environment variable for the images path if needed (default is /var/lib/libvirt/images):

export LIBVIRT_IMAGES_PATH=/path/to/images
source venv/bin/activate
uvicorn app.main:app --reload --host 0.0.0.0

The API will be available at http://0.0.0.0:8000

Access the web interface at http://0.0.0.0:8000

Access the interactive documentation at http://0.0.0.0:8000/docs

Endpoints

  • GET / : Root message
  • GET /vms : List all VMs
  • POST /vms?name={name}&memory={memory}&disk_size={disk_size}&iso={iso} : Create a new VM with specified memory (MiB), disk size (GB), and ISO for installation
  • GET /vms/{vm_id}/start : Start a VM by ID
  • GET /vms/{vm_id}/stop : Stop a VM by ID
  • DELETE /vms/{vm_name} : Delete a VM by name
  • POST /disks?name={name}&size={size} : Create a new disk image with specified size in GB