{{tag>software application gestion stock inventree installation debian}}
====== Inventree: installation sur Debian 12 ======
Notes d'installation de l'application en environnement virtualisé.
===== Création de la VM =====
:TODO_DOCUPDATE:
Téléchargement de l'ISO d'installation par le réseau :
wget https://get.debian.org/images/archive/12.13.0/amd64/iso-cd/debian-12.13.0-amd64-netinst.iso
Création des fichiers disques
newgrp libvirt-qemu
mkdir -p ~/KVM/inventree
cd ~/KVM
qemu-img create -f qcow2 debian.qcow2 15G
qemu-img create -f qcow2 swap.qcow2 2G
chmod g+rw *.qcow2
Création de la VM via virt-install :
virt-install \
--name inventree \
--description "VM Debian 12 (Bookworm) minimaliste. Système minimal sans support vidéo et son." \
--osinfo debian12 \
--memory 1024 \
--vcpus 2 \
--boot uefi \
--controller type=scsi,model=virtio-scsi,driver.iommu=on \
--controller type=virtio-serial,driver.iommu=on \
--rng /dev/random,driver.iommu=on \
--disk /home/user/KVM/inventree/debian.qcow2,format=qcow2,target.bus=scsi,driver.discard=unmap \
--disk /home/user/KVM/inventree/swap.qcow2,format=qcow2,target.bus=scsi,driver.discard=unmap \
--graphics none \
--sound none \
--controller type=usb,model=none \
--cdrom /home/user/KVM/sysinstall/debian-12.13.0-amd64-netinst.iso \
--network network=default,model=virtio,driver.iommu=on
Installation classique minimaliste outils système et SSH uniquement.
apt install -y sudo
Depuis le compte administrateur, récupérer et lancer le script d'installation :
wget -qO install.sh https://get.inventree.org && bash install.sh
Lors de l'installation plusieurs variables d'environnement sont définies. Ci-dessous un extrait des messages retournés par le script :
...
# POI03| INVENTREE_MEDIA_ROOT=/opt/inventree/data/media
# POI03| INVENTREE_STATIC_ROOT=/opt/inventree/data/static
# POI03| INVENTREE_BACKUP_DIR=/opt/inventree/data/backup
# POI03| INVENTREE_PLUGINS_ENABLED=true
# POI03| INVENTREE_PLUGIN_FILE=/etc/inventree/plugins.txt
# POI03| INVENTREE_SECRET_KEY_FILE=/etc/inventree/secret_key.txt
# POI03| INVENTREE_DB_ENGINE=sqlite3
# POI03| INVENTREE_DB_NAME=/opt/inventree/data/database.sqlite3
# POI03| INVENTREE_DB_USER=sampleuser
# POI03| INVENTREE_DB_HOST=samplehost
# POI03| INVENTREE_DB_PORT=123456
# POI03| INVENTREE_SITE_URL=http://78.121.49.83
...
La variable d'environnement ''INVENTREE_SITE_URL'' est définie avec une valeur par défaut. Dans l'environnement virtualisé, cette valeur ne correspond pas à l'IP ou ou nom de domaine du système invité et empêche la consultation du frontend.
Ici on détruit la variable d'environnement. On peut ensuite redéfinir correctement l'adresse du site dans le fichier de configuration ''/etc/inventree/config.yaml''.
inventree config:unset INVENTREE_SITE_URL
# ...
# Base URL for the InvenTree server (or use the environment variable INVENTREE_SITE_URL)
site_url: 'http://inventree.kvm.internal:8000'
# ...
On relance le service web
systemctl restart inventree-web.service
Sur la machine hôte, on modifie le fichier ''/etc/hosts'' afin de pouvoir résoudre la VM
127.0.1.1 juggernaut
192.168.122.29 inventree.kvm.internal
===== Références =====
* [[https://docs.inventree.org/en/stable/start/installer/|Script d'installation d'InvenTree sur Debian 12]]