Skip to main content
ocsinventory docker cover

Tuto comment installer OCSInventory en quelques secondes

Hello !

Aujourd’hui nous allons voir ensemble comment installer OCSInventory pour un simple test ou pour de la production, le tout en quelques secondes en utilisant Docker et la stack officielle OCS.

Pour commencer nous allons rapidement revenir sur docker et les possibilités qu’il propose.

Nous verrons ensuite comment utiliser et lancer la stack OCS.

Docker c’est quoi ?

C’est un système de conteneurs permettant de lancer des applications isolées du système très rapidement. Docker possède une communauté énorme qui permet à tous les projets open source modernes d’avoir leur image ou leur stack.

Une stack, une image ? Je ne comprend pas bien !

Une image docker est une suite de fichiers et d’instructions qui est après build pour en garder qu’un fichier. Une image peut se lancer avec des arguments.

Une stack est une addition d’images avec des instructions pour les lier entre elles, également un fichier de configuration duquel nous pourrons build notre stack et ainsi lancer toutes les images associées rapidement.

Maintenant que vous connaissez la différence entre les deux, passons à OCS Inventory !

 

Docker et OCS

Avant de continuer ce tuto merci de vérifier que vous avez bien la dernière version de docker et docker-compose sur votre poste.

 

Il faut savoir que OCS met à disposition une image et une stack qui va s’appuyer sur l’image ainsi que l’image mysql officielle maintenue par docker.

L’image est disponible ici: L’image sur le docker hub

Les sources de l’image ici: Les sources de l’image sur Github

La stack est disponible ici: Les sources de la stack sur Github

 

J’ai déjà une base de donnés OCS et je ne veux pas réinstaller un serveur OCS à la main, puis-je utiliser l’image ?

Oui !! C’est fait pour ! Nous ne verrons pas ici comment faire pour la simple et bonne raison qu’il n’y a rien de plus simple que de cloner les sources et de lancer le fichier setup.sh avec les commandes suivantes:

git clone https://github.com/OCSInventory-NG/OCSInventory-Docker-Image.git
bash setup.sh

Le script vous donnera alors la commande à copier pour lancer votre instance OCS avec votre serveur mysql courant, rien de plus simple !

 

Je souhaite repartir de zéro ou je n’ai pas encore de serveur OCSInventory ?

Dans ce cas là, la stack est faite pour vous !

Commençons par cloner les fichiers de la stack:

git clone https://github.com/OCSInventory-NG/OCSInventory-Docker-Stack

Puis rendez-vous dans le dossier créé :

cd OCSInventory-Docker-Stack/

Listons un peu les fichiers présents avec la commande ‘ls’:

README.md          docker-compose.yml setup.sh           sql

Seulement le fichier docker-compose.yml va nous intéresser ici, il contient toutes les configurations de notre serveur OCS:

[pastacode lang= »bash » manual= »version%3A%20’3’%0Aservices%20%3A%0A%20%20web%20%3A%0A%20%20%20%20image%20%3A%20ocsinventory%2Focsinventory-docker-image%3Alatest%0A%20%20%20%20container_name%20%3A%20ocsinventory-server%0A%20%20%20%20environment%20%3A%0A%20%20%20%20%20%20OCS_DBNAME%20%3A%20ocsweb%0A%20%20%20%20%20%20OCS_DBSERVER_READ%20%3A%20ocsinventory-db%0A%20%20%20%20%20%20OCS_DBSERVER_WRITE%20%3A%20ocsinventory-db%0A%20%20%20%20%20%20OCS_DBUSER%20%3A%20ocs%0A%20%20%20%20%20%20OCS_DBPASS%20%3A%20ocs%0A%20%20%20%20volumes%20%3A%0A%20%20%20%20%20%20-%20ocssrv%3A%2Fusr%2Fshare%2Focsinventory-reports%2F%0A%20%20%20%20%20%20-%20ocssrv%3A%2Fetc%2Focsinventory-reports%2F%0A%20%20%20%20%20%20-%20ocssrv%3A%2Fvar%2Flib%2Focsinventory-reports%2F%0A%20%20%20%20links%20%3A%0A%20%20%20%20%20%20-%20db%0A%20%20%20%20ports%20%3A%0A%20%20%20%20%20%20-%2080%3A80%0A%20%20%20%20%20%20-%20443%3A443%0A%0A%20%20db%20%3A%0A%20%20%20%20image%20%3A%20mysql%3A5.7%0A%20%20%20%20container_name%20%3A%20ocsinventory-db%0A%20%20%20%20restart%3A%20always%0A%20%20%20%20environment%3A%0A%20%20%20%20%20%20MYSQL_ROOT_PASSWORD%20%3A%20mdp%0A%20%20%20%20%20%20MYSQL_USER%20%3A%20ocs%0A%20%20%20%20%20%20MYSQL_PASSWORD%20%3A%20ocs%0A%20%20%20%20%20%20MYSQL_DATABASE%20%3A%20ocsweb%0A%20%20%20%20volumes%20%3A%0A%20%20%20%20%20%20-%20.%2Fsql%2F%3A%2Fdocker-entrypoint-initdb.d%2F%0A%20%20%20%20%20%20-%20ocsdata%3A%2Fvar%2Flib%2Fmysql%0A%20%20%20%20ports%20%3A%0A%20%20%20%20%20%20-%203306%3A3306%0A%0Avolumes%3A%0A%20%20ocsdata%3A%0A%20%20%20%20driver%3A%20local%0A%20%20ocssrv%3A%0A%20%20%20%20driver%3A%20local » message= »docker-composer.yml docker stack ocs » highlight= » » provider= »manual »/]

 

Dans un premier temps, les lignes 27 à 30 vont nous intéresser, elles contiennent la configuration de la base de données qui va être créée. Il faudra copier ces valeurs et les faire correspondre aux lignes 7 à 11 du serveur.

Comme nous pouvons le voir au passage, la stack va créer des volumes, une instance mysql et une instance OCS. Ces images se basent sur les images disponibles sur le docker hub. Vous pouvez modifier toutes ces valeurs pour les faire correspondre à votre infrastructure Docker comme Swarm etc.. c’est le principe d’une stack !

Passons au lancement !

Nous allons lancer le fichier setup.sh qui pour le moment ne fait rien d’autre que de faire un docker-compose build et docker-compose up.

bash setup.sh

 

Rendez-vous maintenant sur le panel OCSReports et let’s go !

http://localhost/ocsreports

login page for ocsinventory

 

Pour en savoir plus sur l’utilisation de la solution rendez-vous sur le site officiel.

 

Amusez vous bien avec votre nouvelle instance Docker et à la prochaine pour de nouveaux tutos 😉 !

Valentin Deville

Twitter: @v_deville Instagram: @valentin.deville Linkedin: @vdeville Société: Deville Computing

2 réponses à “Tuto comment installer OCSInventory en quelques secondes

  1. Merci pour le tuto.

    En faite je dispose déjà d’une base de données OCS mais  je tombe su une page blanche quand j’accède sur la page d’accueil d’OCS mais la deuxième méthode (
    Je souhaite repartir de zéro ou je n’ai pas encore de serveur OCSInventory ?)
    marche parfaitement

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *