Hostinger

Comment installer et utiliser Odoo avec Docker ?

Qu'est-ce que Odoo ?

Odoo Apps est une platforme où vous pouvez trouver des milliers d’applications développées par Odoo ou par la communauté.

Elles permettent d’ajouter de nouvelles fonctionnalités à votre instance Odoo, similaires aux extensions d’un smartphone ou d’un navigateur.

Sur leur plateforme, vous pouvez trouver des applications classées par catégorie.

Odoo interface

Comme vous pouvez le constater, il est possible de faire de nombreuses choses :

  • Ventes
    • Devis
    • Factures
  • Facturation
    • Paiement en ligne
  • Comptabilité
  • Achats
  • ...

L'objectif du cours !

Vous découvrirez comment installer avec Docker et utiliser Odoo.

Pour déployer sur votre machine ou serveur (VPS ou autre), une bonne connaissance de Docker est essentielle.

Arborescence du projet

Voici l'arborescence du projet :

Odoo/
|-- compose.yml

Contenu du compose.yml

Nous allons maintenant remplir le fichier compose.yml :

services:
  db:
    image: postgres:16
    environment:
      POSTGRES_DB: postgres
      POSTGRES_USER: odoo
      POSTGRES_PASSWORD: odoo
    volumes:
      - db-data:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U odoo -d postgres"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 60s

  odoo:
    image: odoo:17
    depends_on:
      db:
        condition: service_healthy
    ports:
      - "8069:8069"
    environment:
      HOST: db
      USER: odoo
      PASSWORD: odoo
    volumes:
      - odoo-data:/var/lib/odoo


volumes:
  db-data:
  odoo-data:

Nous allons déployer deux conteneurs grâce à Docker : un pour les bases de données et un autre pour l’interface Odoo.

Lancer les deux conteneurs

Pour lancer les deux conteneurs, veuillez taper la commande suivante :

docker-compose up

⚠️ Très important : il faut attendre quelques secondes et ensuite taper dans le navigateur de votre choix :

http://localhost:8069/web/database/selector

Découverte de l'interface

La première fois que vous allez vous connecter, Odoo va vous proposer de créer une nouvelle base de données qui contiendra toutes les informations.

Remplissez le formulaire à votre convenance. Je vais définir un mot de passe faible par défaut, mais si vous prévoyez d’y stocker des informations confidentielles, je vous recommande vivement d’utiliser un mot de passe fort.

L'interface Odoo pour créer une base de données

Vous pouvez cliquer sur Create database ensuite.

Liste des applications

Normalement, on vous demandra de vous connecter à votre compte. Vous pouvez utiliser les informations que vous avez enregistré.

Se connecter à Odoo

Le logiciel Odoo vous présentera toutes applications disponibles.

Liste des applications dans Odoo

Alors, dans la version auto-hébergée, vous ne pourrez utiliser gratuitement que les applications qui contiennent le bouton Activer. Pour les autres, il faudra Mettre à niveau.

Tests d'applications

Ventes

Nous allons commencer par utiliser l'application Ventes. Lorsque l'on débute avec cette application, on se retrouve devant une interface qui nous propose de créer la configuration des devis.

Interface ventes de Odoo

L’intérêt de cette interface est qu’elle décompose le processus en plusieurs étapes :

  • Données de la société
  • Mise en page des documents
  • Confirmation de la commande

Données de la société

Nous allons commencer à enregistrer les données de notre société fictive.

Enregistrer les données pour la société

Personnaliser le devis

Nous allons ensuite personnaliser nos devis. C'est à dire choisir l'agencement de nos documents.

Personnaliser le devis

Confirmation de la commande

Nous allons maintenant indiquer comment un devis ou une commande est confirmé.

Comment la commande est confirmée ?

Devis prêts

Maintenant, le système est prêt et la société pourra créer des devis.

Conclusion

Le logiciels Odoo est un outil pratique pour les entreprises. Nous avons vu ensemble comment l'installer dans une machine locale (ou un VPS) grâce à Docker et au fichier compose.yml.