Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
| software:applications:inventree [2026/02/24 19:04] – créée yoann | software:applications:inventree [2026/03/10 21:29] (Version actuelle) – yoann | ||
|---|---|---|---|
| Ligne 2: | Ligne 2: | ||
| - | ====== | + | ====== |
| - | InvenTree est un logiciel de gestion d' | + | InvenTree est un logiciel de gestion d' |
| + | ===== Installation ===== | ||
| + | |||
| + | : | ||
| + | |||
| + | Un script d' | ||
| + | |||
| + | Installer les prérequis : | ||
| + | |||
| + | Il est fortement recommandé de ne pas exécuter le serveur InvenTree en tant que root. On crée un utilisateur avec des droits restreints pour l' | ||
| + | |||
| + | <code bash> | ||
| + | useradd -m -d / | ||
| + | </ | ||
| + | |||
| + | ==== Base de données PostgreSQL ==== | ||
| + | |||
| + | Inventree peut s' | ||
| + | |||
| + | <code bash> | ||
| + | apt-get install -y postgresql postgresql-contrib libpq-dev | ||
| + | </ | ||
| + | |||
| + | Vérifier que le serveur de base de données s' | ||
| + | <code bash> | ||
| + | systemctl status postgresql.service | ||
| + | </ | ||
| + | |||
| + | |||
| + | Créer une nouvelle base et un rôle : ils seront utilisés par l' | ||
| + | |||
| + | <code bash> | ||
| + | runuser -u postgres -- psql | ||
| + | </ | ||
| + | |||
| + | <code sql> | ||
| + | CREATE DATABASE inventree; | ||
| + | CREATE USER itree WITH ENCRYPTED PASSWORD ' | ||
| + | GRANT ALL ON DATABASE inventree TO itree; | ||
| + | |||
| + | ; WARN : Pour que toutes les requêtes puissent s' | ||
| + | ; faire de l' | ||
| + | ALTER DATABASE inventree OWNER TO itree; | ||
| + | </ | ||
| + | |||
| + | Quitter le client psql. Depuis le compte root, vérifier que la base est accessible pour l' | ||
| + | |||
| + | <code bash> | ||
| + | runuser -u inventree -- psql --user itree --password -h / | ||
| + | </ | ||
| + | |||
| + | Sur une installation par défaut, la commande précédente devrait retourner un message d' | ||
| + | |||
| + | < | ||
| + | psql: erreur : la connexion au serveur sur le socket « / | ||
| + | </ | ||
| + | |||
| + | A l' | ||
| + | |||
| + | Modifier le fichier d' | ||
| + | |||
| + | <file conf [highlight_lines_extra=" | ||
| + | # ... | ||
| + | # Database administrative login by Unix domain socket | ||
| + | local | ||
| + | |||
| + | # TYPE DATABASE | ||
| + | |||
| + | # " | ||
| + | local | ||
| + | local | ||
| + | # ... | ||
| + | </ | ||
| + | |||
| + | < | ||
| + | Attention à la position de la ligne dans le fichier : placer les connexions rôle/mot de passe avant la ligne '' | ||
| + | </ | ||
| + | |||
| + | <code bash> | ||
| + | systemctl reload postgresql.service | ||
| + | runuser -u inventree -- psql --user itree --password -h / | ||
| + | </ | ||
| + | |||
| + | Si tout est correctement paramétré, | ||
| + | < | ||
| + | psql (17.8 (Debian 17.8-0+deb13u1)) | ||
| + | Saisissez « help » pour l' | ||
| + | |||
| + | inventree=> | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== Application ==== | ||
| + | |||
| + | Installer les paquetages prérequis : | ||
| + | |||
| + | <code bash> | ||
| + | apt-get update | ||
| + | apt-get install -y \ | ||
| + | python3 python3-dev python3-pip python3-invoke python3-venv \ | ||
| + | git gcc g++ gettext gnupg \ | ||
| + | poppler-utils libpango-1.0-0 libpangoft2-1.0-0 \ | ||
| + | libjpeg-dev webp | ||
| + | | ||
| + | apt install -y weasyprint | ||
| + | </ | ||
| + | |||
| + | |||
| + | <code bash> | ||
| + | # Création des répertoires nécessaires à l' | ||
| + | mkdir -p / | ||
| + | chown -R inventree: / | ||
| + | |||
| + | su - inventree | ||
| + | cd / | ||
| + | </ | ||
| + | |||
| + | Récupérer le code source d' | ||
| + | |||
| + | <code bash> | ||
| + | # git clone https:// | ||
| + | git clone https:// | ||
| + | </ | ||
| + | |||
| + | La branche '' | ||
| + | |||
| + | <code bash> | ||
| + | cd app | ||
| + | git checkout stable | ||
| + | |||
| + | python3 -m venv env | ||
| + | source env/ | ||
| + | |||
| + | # Les paquets requis pour le serveur InvenTree doivent être installés dans l' | ||
| + | pip install --upgrade --ignore-installed invoke | ||
| + | |||
| + | # Selon le SGDB choisit, installer paquets de liaison binding (ici PostgreSQL) | ||
| + | pip3 install psycopg pgcli | ||
| + | |||
| + | # Si MySQL | ||
| + | # pip3 install mysqlclient mariadb | ||
| + | |||
| + | # Installer | ||
| + | export INVENTREE_SITE_URL=" | ||
| + | export INVENTREE_STATIC_ROOT="/ | ||
| + | export INVENTREE_MEDIA_ROOT="/ | ||
| + | export INVENTREE_BACKUP_DIR="/ | ||
| + | export INVENTREE_DB_ENGINE=postgresql | ||
| + | export INVENTREE_DB_NAME=inventree INVENTREE_DB_USER=itree INVENTREE_DB_PASSWORD=" | ||
| + | |||
| + | invoke install | ||
| + | </ | ||
| + | |||
| + | Initialiser la base de données : | ||
| + | |||
| + | <code bash> | ||
| + | invoke update --skip-backup | ||
| + | </ | ||
| + | |||
| + | Créer le compte d' | ||
| + | <code bash> | ||
| + | invoke superuser | ||
| + | </ | ||
| + | |||
| + | Tester l' | ||
| + | <code bash> | ||
| + | invoke dev.server | ||
| + | </ | ||
| + | |||
| + | Ouvrir le navigateur à l' | ||
| + | |||
| + | ===== Construire le frontend ===== | ||
| + | |||
| + | <code bash> | ||
| + | apt install -y yarnpkg | ||
| + | </ | ||
| ===== Références ===== | ===== Références ===== | ||
| * [[https:// | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * [[https:// | ||