Přejít na obsah
Menu
You need to be registered to interact with the community.
This question has been flagged
1 Odpovědět
40 Zobrazení


I want each tenant to have:


Separate DB (one per tenant)


Shared base code and core modules


Custom modules per client


White-label branding managed from UI (not code)


Easy CI/CD for updates and Docker deployments


Any recommended Git structure or deployment best practices for scalability and maintenance?

Avatar
Zrušit
Nejlepší odpověď

To manage a multi-tenant Odoo Community setup with white-label support, consider the following architecture:


Separate Databases per Tenant: Each tenant should have its own database for data isolation.


Shared Base Code & Core Modules: Maintain a common codebase for core functionality and base modules, ensuring consistency across tenants.


Custom Modules per Tenant: Use a modular approach, storing custom modules in tenant-specific directories or repositories, and referencing them in the main codebase.


White-label Branding: Store branding configurations (logo, theme, etc.) in the res.company model to allow UI-based customization per tenant, without code changes.


Git Structure:


Monorepo: Store shared core code and tenant-specific modules in a single repository with organized directories.

Example structure:

odoo-setup/

├── core/

├── tenant_1_modules/

└── tenant_2_modules/

CI/CD & Docker Deployment:


CI/CD: Automate deployments using tools like GitLab CI or Jenkins, ensuring proper testing and versioning.


Docker: Use Docker to containerize Odoo with shared base code and tenant-specific modules. Docker Compose or Kubernetes can orchestrate multiple tenant environments.


Scalability & Maintenance:


Database Management: Use Odoo’s --db-filter for tenant-specific databases.


Monitoring: Implement monitoring tools like Prometheus and centralized logging for system health and troubleshooting.

Avatar
Zrušit
Related Posts Odpovědi Zobrazení Aktivita
2
čvc 24
3060
2
kvě 24
8334
1
úno 24
2535
1
lis 22
6547
2
zář 22
24804