← Tous les templates · Productivité
Déployez Odoo en un clic
Des applications de gestion réunies en une seule : CRM, ventes, facturation, inventaire, site web, projets et plus encore
Une alternative auto-hébergée à Salesforce, SAP Business One et NetSuite.
Qu’est-ce que Odoo ?
Odoo est une suite d’applications de gestion open source, qui fonctionnent seules ou ensemble comme un seul ERP. Une petite entreprise y gère, depuis la même base de données, son CRM et son pipeline de ventes, ses devis et ses factures, ses achats et son inventaire, sa fabrication, ses projets et ses feuilles de temps, ses employés et leurs congés, un point de vente, un site web avec une boutique en ligne, ses campagnes d’e-mail marketing, des événements et le chat en direct : une opportunité gagnée devient ainsi une commande, une livraison et une facture sans rien ressaisir.
Chaque application s’installe depuis le menu Apps d’Odoo quand vous en avez besoin, et chaque utilisateur se connecte à la même interface web, avec des droits d’accès par application. Odoo Community, l’édition gratuite, a les applications ci-dessus ; Odoo S.A. vend Odoo Enterprise, qui ajoute la comptabilité complète, Studio, Assistance, Documents, Signature, Planification, Services sur site et Connaissances.
Ce template lance Odoo Community depuis l’image officielle d’Odoo, version 20, avec une base de données Postgres 18 que Nouveau projet crée à côté, ou l’une des vôtres que vous choisissez. La base est initialisée, et l’administrateur reçoit l’e-mail et le mot de passe que vous saisissez, avant qu’Odoo ne réponde à quiconque ; le gestionnaire de bases de données reste fermé, et les clients ne s’inscrivent que sur invitation. Ses e-mails passent par Resend, SendGrid ou Amazon SES, celui que vous choisissez dans Nouveau projet, et il n’en envoie aucun tant que vous n’en avez pas choisi.
Hébergement de Odoo sur Pethost
- Vous vous connectez à Pethost avec une clé d’accès, GitHub ou Google. Pas encore de machine ? Vous choisissez une offre, et le lien attend qu’elle soit prête.
- Nouveau projet s’ouvre sur Odoo. Vous remplissez ce qu’il demande et cliquez sur Créer le projet : E-mail, Mot de passe administrateur.
- L’e-mail est facultatif : pour que l’application Odoo en envoie, vous choisissez Resend, SendGrid ou Amazon SES dans Nouveau projet et collez ce que le fournisseur vous donne.
- Nouveau projet crée aussi une nouvelle base de données pour Odoo et la connecte à l’application avant son premier démarrage : Postgres (512 MB). Ou vous choisissez une de vos bases de données Postgres : l’application Odoo y reçoit son propre utilisateur et sa propre base de données, que les autres applications n’ont pas le droit de lire, et toutes les applications de cette base sont sauvegardées et restaurées ensemble.
- En une minute ou deux, Odoo tourne à sa propre adresse en HTTPS. Ses secrets sont créés au hasard, et ses données sont dans la sauvegarde nocturne.
- C’est un projet comme les autres : vous ou votre agent pouvez le modifier, revenir à une version précédente ou le restaurer.
Questions sur Odoo
Odoo est-il gratuit ?
Odoo Community est open source sous licence LGPL-3.0 et gratuit quel que soit le nombre d’utilisateurs. Odoo Enterprise est payant par utilisateur et ajoute des applications comme la comptabilité complète, Studio, Assistance et Documents.
Quelles applications Odoo Community comprend-il ?
Entre autres CRM, Ventes, Facturation, Achats, Inventaire, Fabrication, Projet, Employés, Congés, Point de Vente, Site Web, eCommerce, E-mail Marketing, Événements, Sondages, Live Chat et Discussion.
Odoo ou Salesforce : quelle différence ?
Salesforce est un CRM vendu par utilisateur, dans son propre cloud. Le CRM d’Odoo est une application parmi d’autres : la même base de données contient aussi les ventes, la facturation, l’inventaire et les projets, et Odoo Community ne coûte rien à faire tourner.
Puis-je ajouter des modules depuis l’Odoo App Store ?
Oui. Un module conçu pour Odoo 20 Community se copie dans le volume addons, à /mnt/extra-addons dans le service odoo ; ensuite, « Mettre à jour la liste des Apps » dans Apps, avec le mode développeur activé, le fait apparaître, prêt à être installé.
Odoo Community a-t-il une comptabilité ?
Il a l’application Facturation : factures clients et factures fournisseurs, paiements, taxes et le plan comptable de votre pays. La comptabilité complète, avec la synchronisation et le rapprochement bancaires, les rapports financiers et les outils du comptable, fait partie d’Odoo Enterprise.
De combien de mémoire et de disque Odoo a-t-il besoin ?
Odoo prend environ 150 MB de mémoire à côté de sa base Postgres de 512 MB, davantage à mesure que vous installez et utilisez des applications ; les pièces jointes prennent la place de leurs fichiers. Nouveau projet donne à chaque base de données de l’application la mémoire que recommande le template, sauf si vous la changez : Postgres (512 MB). Sur Pethost, l’offre Starter lui suffit, avec de la place pour d’autres applications à côté.
Le fichier Docker Compose de Odoo
Le template, c’est ce compose.yaml et les variables écrites dans le .env du projet à sa création. Pethost exécute le fichier tel qu’il est écrit. La machine y écrit les identifiants de l’application pour ses bases de données, au moment où elle les connecte. Nouveau projet y écrit les réglages d’e-mail choisis, ou les laisse vides quand l’application n’envoie pas d’e-mail.
Conteneurs : odoo (odoo:20).
Bases de données, chacune un projet à part : Postgres (512 MB).
Volumes, dans la sauvegarde nocturne : data, addons.
services:
odoo:
image: odoo:20
restart: unless-stopped
environment:
PGHOST: ${DATABASE_HOST:?reload New project to link a Postgres database, or send link_databases with env_prefix DATABASE}
PGPORT: ${DATABASE_PORT:?reload New project to link a Postgres database, or send link_databases with env_prefix DATABASE}
PGUSER: ${DATABASE_USER:?reload New project to link a Postgres database, or send link_databases with env_prefix DATABASE}
PGPASSWORD: ${DATABASE_PASSWORD:?reload New project to link a Postgres database, or send link_databases with env_prefix DATABASE}
PGDATABASE: ${DATABASE_NAME:?reload New project to link a Postgres database, or send link_databases with env_prefix DATABASE}
# Odoo's bus and cron listen on this database: the app's own, as it may reach no other.
PGDATABASE_SYSTEM: ${DATABASE_NAME:?reload New project to link a Postgres database, or send link_databases with env_prefix DATABASE}
ADMIN_EMAIL: ${ADMIN_EMAIL}
ADMIN_PASSWORD: ${ADMIN_PASSWORD}
MASTER_PASSWORD: ${MASTER_PASSWORD}
# The mail provider picked in New project, by STARTTLS on its port; with none, Odoo sends no
# mail until an outgoing mail server is added in its settings.
SMTP_HOST: ${SMTP_HOST}
SMTP_PORT: ${SMTP_PORT}
SMTP_USER: ${SMTP_USER}
SMTP_PASSWORD: ${SMTP_PASSWORD}
SMTP_FROM: ${SMTP_FROM}
# The configuration is written at every start from the lines above: one database, the
# database manager closed, the proxy's headers trusted, and a pool within the connections the
# Postgres part gives. A new database is initialised before Odoo answers anyone, with
# auth_signup, which turns free sign-up on when it is installed: so it is installed here, and
# sign-up set to "On invitation" in the step that gives Odoo's administrator, whose login Odoo
# makes "admin" with the password "admin", the email and password of the fields. A start that
# finds auth_signup not installed, or the login still "admin", does what an earlier start left
# undone.
command:
- bash
- -c
- |
set -e
{
echo "[options]"
echo "addons_path = /mnt/extra-addons"
echo "data_dir = /var/lib/odoo"
echo "http_interface = 0.0.0.0"
echo "admin_passwd = $$MASTER_PASSWORD"
echo "db_name = $$PGDATABASE"
echo "dbfilter = ^$$PGDATABASE\$$"
echo "list_db = False"
echo "proxy_mode = True"
echo "db_maxconn = 24"
echo "max_cron_threads = 1"
if [ -n "$$SMTP_HOST" ]; then
echo "smtp_server = $$SMTP_HOST"
echo "smtp_port = $$SMTP_PORT"
echo "smtp_ssl = True"
echo "smtp_user = $$SMTP_USER"
echo "smtp_password = $$SMTP_PASSWORD"
echo "email_from = $$SMTP_FROM"
fi
} > /etc/odoo/odoo.conf
wait-for-psql.py --timeout=120
installed="select 1 from ir_module_module where name = 'auth_signup' and state = 'installed'"
if [ -z "$$(psql -tAc "$$installed" 2>/dev/null)" ]; then
psql -c 'create extension if not exists pg_trgm'
odoo -d "$$PGDATABASE" -i base,auth_signup --stop-after-init --no-http
fi
admin="select u.login from res_users u join ir_model_data d on d.res_id = u.id where d.module = 'base' and d.name = 'user_admin'"
if [ "$$(psql -tAc "$$admin" 2>/dev/null)" = admin ]; then
odoo shell -d "$$PGDATABASE" --no-http <<'PYTHON'
import os
admin = env.ref('base.user_admin')
admin.write({'login': os.environ['ADMIN_EMAIL'], 'email': os.environ['ADMIN_EMAIL'], 'password': os.environ['ADMIN_PASSWORD']})
env['ir.config_parameter'].set_str('auth_signup.invitation_scope', 'b2b')
env.cr.commit()
PYTHON
fi
exec odoo
volumes:
# Attachments, sessions and the files of installed apps.
- data:/var/lib/odoo
- addons:/mnt/extra-addons
healthcheck:
test: ["CMD", "curl", "-fsS", "-o", "/dev/null", "http://127.0.0.1:8069/web/health"]
interval: 10s
timeout: 5s
retries: 30
start_period: 300s
volumes:
data:
addons:
Aussi dans Productivité
- MealieUn gestionnaire de recettes et planificateur de repas
- RyotUn outil de suivi pour films, séries, livres, jeux et entraînements
- VikunjaListes de tâches et projets, avec vues kanban et Gantt
- ExcalidrawUn tableau blanc pour des schémas et des croquis dessinés à la main, avec collaboration en direct
- NocoDBUne base de données sans code : des tables façon tableur, des formulaires, des tableaux kanban et des calendriers, avec une API
- PLANKADes tableaux kanban pour les projets et les équipes, mis à jour en temps réel pour tout le monde